demuxer.mid
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· MID 代码 · 共 4,656 行 · 第 1/5 页
MID
4,656 行
.file 1 "demuxer.c" .section .mdebug.abi32 .previous .section .text.ds_add_packet,"ax",@progbits .align 2 .align 5 .globl ds_add_packet .ent ds_add_packet .type ds_add_packet, @functionds_add_packet: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $2,48($4) lw $3,52($4) addiu $2,$2,1 sw $2,48($4) lw $2,0($5) lw $6,60($4) addu $3,$3,$2 beq $6,$0,$L2 sw $3,52($4) sw $5,52($6) j $31 sw $5,60($4)$L2: sw $5,56($4) j $31 sw $5,60($4) .set macro .set reorder .end ds_add_packet .section .text.demux_fill_buffer,"ax",@progbits .align 2 .align 5 .globl demux_fill_buffer .ent demux_fill_buffer .type demux_fill_buffer, @functiondemux_fill_buffer: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $2,0($4) lw $25,32($2) jr $25 nop .set macro .set reorder .end demux_fill_buffer .section .text.demux_control,"ax",@progbits .align 2 .align 5 .globl demux_control .ent demux_control .type demux_control, @functiondemux_control: .frame $sp,0,$31 # vars= 0, regs= 0/0, args= 0, gp= 0 .mask 0x00000000,0 .fmask 0x00000000,0 .set noreorder .set nomacro lw $3,0($4) lw $25,48($3) beq $25,$0,$L15 li $2,-1 # 0xffffffffffffffff jr $25 nop$L15: j $31 nop .set macro .set reorder .end demux_control .globl __nedf2 .globl __fixdfsi .section .rodata.cst8,"aM",@progbits,8 .align 3$LC0: .word 0 .word -1008730112 .section .text.demuxer_get_current_time,"ax",@progbits .align 2 .align 5 .globl demuxer_get_current_time .ent demuxer_get_current_time .type demuxer_get_current_time, @functiondemuxer_get_current_time: .frame $sp,32,$31 # vars= 0, regs= 4/0, args= 16, gp= 0 .mask 0x80070000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $31,28($sp) sw $18,24($sp) sw $17,20($sp) sw $16,16($sp) lw $17,28($4) lui $2,%hi($LC0) lw $16,24($4) lw $3,56($4) lw $6,%lo($LC0)($2) lw $7,%lo($LC0+4)($2) move $4,$16 move $5,$17 jal __nedf2 lw $18,92($3) move $4,$16 bne $2,$0,$L24 move $5,$17 beq $18,$0,$L20 move $2,$0 lw $4,40($18) lw $5,44($18)$L24: jal __fixdfsi nop$L20: lw $31,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32 .set macro .set reorder .end demuxer_get_current_time .section .text.new_demuxer_stream,"ax",@progbits .align 2 .align 5 .globl new_demuxer_stream .ent new_demuxer_stream .type new_demuxer_stream, @functionnew_demuxer_stream: .frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0 .mask 0x80030000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-32 sw $17,20($sp) move $17,$4 li $4,96 # 0x60 sw $31,24($sp) sw $16,16($sp) jal uc_malloc move $16,$5 li $4,-1 # 0xffffffffffffffff sw $16,68($2) sw $17,72($2) sw $4,80($2) sw $0,92($2) sw $0,4($2) sw $0,0($2) sw $0,8($2) sw $0,16($2) sw $0,20($2) sw $0,24($2) sw $0,28($2) sw $0,32($2) sw $0,36($2) sw $0,40($2) sw $0,48($2) sw $0,52($2) sw $0,64($2) sw $0,60($2) sw $0,56($2) sw $0,76($2) sw $0,88($2) sw $0,84($2) lw $31,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,32 .set macro .set reorder .end new_demuxer_stream .section .text.demuxer_add_chapter,"ax",@progbits .align 2 .align 5 .globl demuxer_add_chapter .ent demuxer_add_chapter .type demuxer_add_chapter, @functiondemuxer_add_chapter: .frame $sp,40,$31 # vars= 0, regs= 6/0, args= 16, gp= 0 .mask 0x801f0000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-40 sw $20,32($sp) sw $19,28($sp) sw $18,24($sp) sw $17,20($sp) sw $31,36($sp) move $17,$4 sw $16,16($sp) lw $8,2240($17) li $4,768 # 0x300 move $20,$5 move $18,$6 beq $8,$0,$L33 move $19,$7 lw $3,2244($17) move $4,$8 sll $2,$3,3 sll $5,$3,5 subu $5,$5,$2 andi $2,$3,0x1f beq $2,$0,$L34 addiu $5,$5,768$L30: sll $2,$3,3 sll $16,$3,5 subu $16,$16,$2 addu $16,$16,$8 sw $18,0($16) sw $19,4($16) lw $3,60($sp) lw $2,56($sp) move $4,$20 sw $3,12($16) jal uc_strdup sw $2,8($16) lw $3,2244($17) sw $2,16($16) addiu $2,$3,1 sw $2,2244($17) lw $31,36($sp) lw $20,32($sp) lw $19,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) move $2,$3 j $31 addiu $sp,$sp,40$L34: jal uc_realloc nop lw $3,2244($17) move $8,$2 j $L30 sw $2,2240($17)$L33: jal uc_malloc nop lw $3,2244($17) move $8,$2 j $L30 sw $2,2240($17) .set macro .set reorder .end demuxer_add_chapter .section .text.demux_info_get,"ax",@progbits .align 2 .align 5 .globl demux_info_get .ent demux_info_get .type demux_info_get, @functiondemux_info_get: .frame $sp,40,$31 # vars= 0, regs= 5/0, args= 16, gp= 0 .mask 0x800f0000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-40 sw $19,28($sp) sw $31,32($sp) sw $18,24($sp) sw $17,20($sp) sw $16,16($sp) lw $17,2252($4) bne $17,$0,$L45 move $19,$5$L36: lw $31,32($sp) lw $19,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) move $2,$0 j $31 addiu $sp,$sp,40$L45: lw $5,0($17) beq $5,$0,$L36 move $18,$0 j $L39 li $16,8 # 0x8$L40: lw $5,0($5) move $18,$16 beq $5,$0,$L36 addiu $16,$16,8$L39: jal strcasecmp move $4,$19 bne $2,$0,$L40 addu $5,$17,$16 addu $2,$17,$18 lw $2,4($2) lw $31,32($sp) lw $19,28($sp) lw $18,24($sp) lw $17,20($sp) lw $16,16($sp) j $31 addiu $sp,$sp,40 .set macro .set reorder .end demux_info_get .section .rodata.str1.4,"aMS",@progbits,1 .align 2$LC1: .ascii "Clip info:\012\000" .align 2$LC2: .ascii " %s: %s\012\000" .align 2$LC3: .ascii "ID_CLIP_INFO_NAME%d=%s\012\000" .align 2$LC4: .ascii "ID_CLIP_INFO_VALUE%d=%s\012\000" .align 2$LC5: .ascii "ID_CLIP_INFO_N=%d\012\000" .section .text.demux_info_print,"ax",@progbits .align 2 .align 5 .globl demux_info_print .ent demux_info_print .type demux_info_print, @functiondemux_info_print: .frame $sp,64,$31 # vars= 0, regs= 9/0, args= 24, gp= 0 .mask 0x80ff0000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-64 sw $31,56($sp) sw $23,52($sp) sw $22,48($sp) sw $21,44($sp) sw $20,40($sp) sw $19,36($sp) sw $18,32($sp) sw $17,28($sp) sw $16,24($sp) lw $20,2252($4) beq $20,$0,$L47 lui $6,%hi($LC1) addiu $6,$6,%lo($LC1) li $4,7 # 0x7 jal mp_msg li $5,4 # 0x4 lw $7,0($20) beq $7,$0,$L55 addiu $17,$20,8 move $18,$20 move $19,$0 move $2,$0 lui $23,%hi($LC2) lui $22,%hi($LC3) lui $21,%hi($LC4)$L52: addu $16,$20,$2 lw $2,4($16) li $4,7 # 0x7 li $5,4 # 0x4 addiu $6,$23,%lo($LC2) jal mp_msg sw $2,16($sp) lw $2,0($18) move $7,$19 li $4,41 # 0x29 li $5,4 # 0x4 addiu $6,$22,%lo($LC3) jal mp_msg sw $2,16($sp) lw $2,4($16) move $7,$19 li $4,41 # 0x29 li $5,4 # 0x4 addiu $6,$21,%lo($LC4) jal mp_msg sw $2,16($sp) lw $7,0($17) addiu $19,$19,1 move $18,$17 sll $2,$19,3 bne $7,$0,$L52 addiu $17,$17,8$L51: lui $6,%hi($LC5) addiu $6,$6,%lo($LC5) move $7,$19 li $4,41 # 0x29 jal mp_msg li $5,4 # 0x4$L47: lw $31,56($sp) lw $23,52($sp) lw $22,48($sp) lw $21,44($sp) lw $20,40($sp) lw $19,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) move $2,$0 j $31 addiu $sp,$sp,64$L55: j $L51 move $19,$0 .set macro .set reorder .end demux_info_print .section .rodata.str1.4 .align 2$LC6: .ascii "DEMUXER: freeing sh_video at %p\012\000" .section .text.free_sh_video,"ax",@progbits .align 2 .align 5 .globl free_sh_video .ent free_sh_video .type free_sh_video, @functionfree_sh_video: .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 .mask 0x80010000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sw $16,16($sp) lui $6,%hi($LC6) move $16,$4 addiu $6,$6,%lo($LC6) li $4,5 # 0x5 li $5,7 # 0x7 sw $31,20($sp) jal mp_msg move $7,$16 lw $2,336($16) beq $2,$0,$L57 move $4,$2 jal uc_free nop$L57: move $4,$16 lw $31,20($sp) lw $16,16($sp) j uc_free addiu $sp,$sp,24 .set macro .set reorder .end free_sh_video .section .rodata.str1.4 .align 2$LC7: .ascii "DEMUXER: freeing sh_audio at %p\012\000" .section .text.free_sh_audio,"ax",@progbits .align 2 .align 5 .globl free_sh_audio .ent free_sh_audio .type free_sh_audio, @functionfree_sh_audio: .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 .mask 0x80010000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sll $5,$5,2 addu $5,$5,$4 sw $31,20($sp) sw $16,16($sp) lw $16,64($5) lui $6,%hi($LC7) sw $0,64($5) li $4,5 # 0x5 addiu $6,$6,%lo($LC7) li $5,7 # 0x7 jal mp_msg move $7,$16 lw $2,156($16) beq $2,$0,$L61 move $4,$2 jal uc_free nop$L61: lw $3,172($16) li $2,1 # 0x1 beq $3,$2,$L67 nop$L63: move $4,$16 lw $31,20($sp) lw $16,16($sp) j uc_free addiu $sp,$sp,24$L67: lw $2,164($16) beq $2,$0,$L63 move $4,$2 jal uc_free nop sw $0,164($16) move $4,$16 lw $31,20($sp) lw $16,16($sp) j uc_free addiu $sp,$sp,24 .set macro .set reorder .end free_sh_audio .section .rodata.str1.4 .align 2$LC8: .ascii "DEMUXER: freeing sh_sub at %p\012\000" .section .text.free_sh_sub,"ax",@progbits .align 2 .align 5 .globl free_sh_sub .ent free_sh_sub .type free_sh_sub, @functionfree_sh_sub: .frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0 .mask 0x80010000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-24 sw $16,16($sp) lui $6,%hi($LC8) move $16,$4 move $7,$16 li $4,5 # 0x5 addiu $6,$6,%lo($LC8) sw $31,20($sp) jal mp_msg li $5,7 # 0x7 move $4,$16 lw $31,20($sp) lw $16,16($sp) j uc_free addiu $sp,$sp,24 .set macro .set reorder .end free_sh_sub .section .text.get_demuxer_type_from_name,"ax",@progbits .align 2 .align 5 .globl get_demuxer_type_from_name .ent get_demuxer_type_from_name .type get_demuxer_type_from_name, @functionget_demuxer_type_from_name: .frame $sp,40,$31 # vars= 8, regs= 4/0, args= 16, gp= 0 .mask 0x80070000,-4 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-40 sw $18,32($sp) sw $31,36($sp) sw $17,28($sp) sw $16,24($sp) beq $4,$0,$L71 move $18,$4 lb $3,0($4) beq $3,$0,$L71 nop beq $5,$0,$L74 xori $2,$3,0x2b sltu $2,$2,1 sw $2,0($5) lb $3,0($4)$L74: lui $2,%hi(demuxer_list) lw $5,%lo(demuxer_list)($2) xori $3,$3,0x2b addiu $2,$18,1 beq $5,$0,$L78 movz $18,$2,$3 lui $2,%hi(demuxer_list+4) j $L80 addiu $17,$2,%lo(demuxer_list+4)$L81: lw $5,0($17) beq $5,$0,$L78 addiu $17,$17,4$L80: lw $16,20($5) slt $2,$16,45 beq $2,$0,$L81 move $4,$18 jal strcmp lw $5,4($5) bne $2,$0,$L81 move $2,$16$L90: lw $31,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) j $31 addiu $sp,$sp,40$L78: move $4,$18 addiu $5,$sp,16 move $6,$0 jal __strtol_internal move $7,$0 move $4,$2 lw $2,16($sp) lb $3,0($2) beq $3,$0,$L89 addiu $2,$4,-1$L84: li $16,-1 # 0xffffffffffffffff move $2,$16 lw $31,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) j $31 addiu $sp,$sp,40$L71: move $16,$0 move $2,$16 lw $31,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) j $31 addiu $sp,$sp,40$L89: sltu $2,$2,44 beq $2,$0,$L84 move $16,$4 j $L90 move $2,$16 .set macro .set reorder .end get_demuxer_type_from_name .section .rodata.str1.4 .align 2$LC9: .ascii "Available demuxers:\012\000" .align 2$LC10: .ascii " demuxer: type info: (comment)\012\000" .align 2$LC11: .ascii "ID_DEMUXERS\012\000" .align 2$LC12: .ascii "%10s %2d %s (%s)\012\000" .align 2$LC13: .ascii "%10s %2d %s\012\000" .section .text.demuxer_help,"ax",@progbits .align 2 .align 5 .globl demuxer_help .ent demuxer_help .type demuxer_help, @functiondemuxer_help: .frame $sp,56,$31 # vars= 0, regs= 5/0, args= 32, gp= 0 .mask 0x800f0000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro lui $6,%hi($LC9) addiu $sp,$sp,-56 addiu $6,$6,%lo($LC9) li $4,5 # 0x5 li $5,4 # 0x4 sw $31,48($sp) sw $16,32($sp) sw $19,44($sp) sw $18,40($sp) jal mp_msg sw $17,36($sp) lui $6,%hi($LC10) addiu $6,$6,%lo($LC10) li $4,5 # 0x5 jal mp_msg li $5,4 # 0x4 lui $6,%hi($LC11) addiu $6,$6,%lo($LC11) li $4,41 # 0x29 jal mp_msg li $5,4 # 0x4 lui $2,%hi(demuxer_list) lw $16,%lo(demuxer_list)($2) beq $16,$0,$L100 lui $2,%hi(demuxer_list+4) j $L94 addiu $19,$2,%lo(demuxer_list+4)$L97: lw $7,4($16) sw $17,16($sp) lw $2,0($16) lui $6,%hi($LC13) addiu $6,$6,%lo($LC13) li $4,5 # 0x5 li $5,4 # 0x4 jal mp_msg sw $2,20($sp)$L95: lw $16,0($19) beq $16,$0,$L100 addiu $19,$19,4$L94: lw $17,20($16) slt $2,$17,45 beq $2,$0,$L95 nop lw $18,16($16) beq $18,$0,$L97 move $4,$18 jal strlen nop lui $6,%hi($LC12) addiu $6,$6,%lo($LC12) li $4,5 # 0x5 beq $2,$0,$L97 li $5,4 # 0x4 lw $7,4($16) sw $17,16($sp) lw $2,0($16) sw $18,24($sp) jal mp_msg sw $2,20($sp) lw $16,0($19) bne $16,$0,$L94 addiu $19,$19,4$L100: lw $31,48($sp) lw $19,44($sp) lw $18,40($sp) lw $17,36($sp) lw $16,32($sp) j $31 addiu $sp,$sp,56 .set macro .set reorder .end demuxer_help .section .rodata.str1.4 .align 2$LC14: .ascii "Requested video stream id overflow (%d > %d)\012\000" .align 2$LC15: .ascii "WARNING: Video stream header %d redefined.\012\000" .align 2$LC16: .ascii "==> Found video stream: %d\012\000" .align 2$LC17: .ascii "ID_VIDEO_ID=%d\012\000" .section .text.new_sh_video_vid,"ax",@progbits .align 2 .align 5 .globl new_sh_video_vid .ent new_sh_video_vid .type new_sh_video_vid, @functionnew_sh_video_vid: .frame $sp,48,$31 # vars= 0, regs= 5/0, args= 24, gp= 0 .mask 0x800f0000,-8 .fmask 0x00000000,0 .set noreorder .set nomacro addiu $sp,$sp,-48 move $3,$5 sw $19,36($sp) sw $17,28($sp) move $19,$6 sll $17,$5,2 lui $6,%hi($LC14) sltu $2,$3,256 sw $18,32($sp) sw $16,24($sp) move $7,$5 move $18,$4 addu $16,$17,$4 sw $31,40($sp) li $5,2 # 0x2 li $4,5 # 0x5 beq $2,$0,$L110 addiu $6,$6,%lo($LC14) lw $2,1088($16) lui $6,%hi($LC16) addiu $6,$6,%lo($LC16) move $7,$3 li $4,5 # 0x5 beq $2,$0,$L106 li $5,6 # 0x6 lui $6,%hi($LC15) addiu $6,$6,%lo($LC15) jal mp_msg li $5,2 # 0x2 addu $2,$17,$18$L111: lw $2,1088($2) sw $19,0($2)$L105: lw $31,40($sp) lw $19,36($sp) lw $18,32($sp) lw $17,28($sp) lw $16,24($sp) j $31 addiu $sp,$sp,48$L106: jal mp_msg nop li $4,1 # 0x1 jal uc_calloc
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?