parse_mp4.s
来自「君正早期ucos系统(只有早期的才不没有打包成库),MPLAYER,文件系统,图」· S 代码 · 共 3,108 行 · 第 1/3 页
S
3,108 行
.file 1 "parse_mp4.c".section .mdebug.abi32.previous.section .text.mp4_free_esds,"ax",@progbits.align 2.align 5.globl mp4_free_esds.ent mp4_free_esds.type mp4_free_esds, @functionmp4_free_esds:.frame $sp,24,$31 # vars= 0, regs= 2/0, args= 16, gp= 0.mask 0x80010000,-4.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-24sw $16,16($sp)sw $31,20($sp)lhu $2,28($4)bne $2,$0,$L8move $16,$4lbu $2,36($16)$L10:bne $2,$0,$L9lw $31,20($sp)lw $16,16($sp)j $31addiu $sp,$sp,24$L9:lw $4,40($16)lw $16,16($sp)j uc_freeaddiu $sp,$sp,24$L8:jal uc_freelw $4,32($4)j $L10lbu $2,36($16).set macro.set reorder.end mp4_free_esds.section .text.mp4_read_descr_len,"ax",@progbits.align 2.align 5.globl mp4_read_descr_len.ent mp4_read_descr_len.type mp4_read_descr_len, @functionmp4_read_descr_len:.frame $sp,32,$31 # vars= 0, regs= 3/0, args= 16, gp= 0.mask 0x80030000,-8.fmask 0x00000000,0.set noreorder.set nomacroaddiu $sp,$sp,-32sw $16,16($sp)sw $31,24($sp)sw $17,20($sp)lw $5,36($4)lw $2,40($4)sltu $2,$5,$2beq $2,$0,$L35move $16,$4lw $6,80($4)addiu $3,$5,1addu $2,$5,$6lbu $2,0($2)sw $3,36($4)$L16:andi $2,$2,0x00ffsll $3,$2,24sra $3,$3,24bgez $3,$L17andi $17,$2,0x7flw $4,36($16)lw $2,40($16)sltu $2,$4,$2beq $2,$0,$L36addiu $3,$4,1addu $2,$4,$6lbu $2,0($2)sw $3,36($16)$L23:andi $2,$2,0x00ffsll $4,$2,24sll $3,$17,7andi $2,$2,0x7fsra $4,$4,24bgez $4,$L17or $17,$3,$2lw $4,36($16)lw $2,40($16)sltu $2,$4,$2beq $2,$0,$L37addiu $3,$4,1addu $2,$4,$6lbu $2,0($2)sw $3,36($16)$L28:andi $2,$2,0x00ffsll $4,$2,24sll $3,$17,7andi $2,$2,0x7fsra $4,$4,24bgez $4,$L17or $17,$3,$2lw $3,36($16)lw $2,40($16)sltu $2,$3,$2beq $2,$0,$L30addu $2,$3,$6addiu $3,$3,1lbu $2,0($2)sw $3,36($16)$L32:sll $3,$17,7andi $2,$2,0x7for $17,$3,$2$L17:move $2,$17lw $31,24($sp)lw $17,20($sp)lw $16,16($sp)j $31addiu $sp,$sp,32$L35:jal stream_fill_buffernopbeq $2,$0,$L14move $17,$0lw $2,36($16)lw $6,80($16)addiu $3,$2,1addu $2,$6,$2lbu $2,0($2)j $L16sw $3,36($16)$L36:jal stream_fill_buffermove $4,$16beq $2,$0,$L21noplw $2,36($16)lw $6,80($16)addiu $3,$2,1addu $2,$6,$2lbu $2,0($2)j $L23sw $3,36($16)$L37:jal stream_fill_buffermove $4,$16beq $2,$0,$L21noplw $2,36($16)lw $6,80($16)addiu $3,$2,1addu $2,$6,$2lbu $2,0($2)j $L28sw $3,36($16)$L30:jal stream_fill_buffermove $4,$16beq $2,$0,$L21noplw $2,36($16)lw $3,80($16)addiu $4,$2,1addu $3,$3,$2lbu $2,0($3)j $L32sw $4,36($16)$L14:$L21:j $L17sll $17,$17,7.set macro.set reorder.end mp4_read_descr_len.section .rodata.str1.4,"aMS",@progbits,1.align 2$LC0:.ascii "ESDS MPEG4 version: %d flags: 0x%06X\012\000".align 2$LC1:.ascii "ESDS MPEG4 ES Descriptor (%dBytes):\012 -> ESId: %d\012 ".ascii "-> streamPriority: %d\012\000".align 2$LC2:.ascii "ESDS MPEG4 ES Descriptor (%dBytes):\012 -> ESId: %d\012\000".align 2$LC3:.ascii "ESDS MPEG4 Decoder Config Descriptor (%dBytes):\012 -> o".ascii "bjectTypeId: %d\012 -> streamType: 0x%02X\012 -> bufferS".ascii "izeDB: 0x%06X\012 -> maxBitrate: %.3fkbit/s\012 -> avgBi".ascii "trate: %.3fkbit/s\012\000".globl __floatsidf.globl __adddf3.globl __muldf3.align 2$LC6:.ascii "stream_read: WARNING! s->buf_pos>s->buf_len\012\000".align 2$LC7:.ascii "ESDS MPEG4 Decoder Specific Descriptor (%dBytes)\012\000".align 2$LC8:.ascii "ESDS MPEG4 Sync Layer Config Descriptor (%dBytes)\012 ->".ascii " predefined: %d\012\000".section .rodata.cst8,"aM",@progbits,8.align 3$LC4:.word 0.word 1106247680.align 3$LC5:.word -755914244.word 1062232653.section .text.mp4_parse_esds,"ax",@progbits.align 2.align 5.globl mp4_parse_esds.ent mp4_parse_esds.type mp4_parse_esds, @functionmp4_parse_esds:.frame $sp,80,$31 # vars= 0, regs= 7/0, args= 48, gp= 0.mask 0x803f0000,-8.fmask 0x00000000,0addiu $sp,$sp,-80sw $20,64($sp)sw $16,48($sp)move $20,$6sw $31,72($sp)sw $21,68($sp)sw $19,60($sp)sw $18,56($sp).set noreorder.set nomacrojal new_memory_streamsw $17,52($sp).set macro.set reordermove $16,$2li $3,4 # 0x4andi $2,$20,0x3subu $3,$3,$2li $2,2 # 0x2addiu $6,$20,44.set noreorder.set nomacrobeq $3,$2,$L41move $4,$20.set macro.set reorderli $2,3 # 0x3.set noreorder.set nomacrobeq $3,$2,$L42li $2,1 # 0x1.set macro.set reorderbeq $3,$2,$L348$L39:addiu $5,$4,-4move $2,$0#APP.word 0b01110000000000100000000001101111 #S32I2M XR1,$2#NO_APPandi $3,$4,0x1f.set noreorder.set nomacrobeq $3,$0,$L385addiu $2,$6,-31.set macro.set reorderli $2,-32 # 0xffffffffffffffe0and $2,$5,$2addiu $4,$2,32sltu $3,$5,$4.set noreorder.set nomacrobeq $3,$0,$L385addiu $2,$6,-31.set macro.set reorder$L333:#APP.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4#NO_APPsltu $2,$5,$4.set noreorder.set nomacrobne $2,$0,$L333addiu $2,$6,-31.set macro.set reorder$L385:li $3,-32 # 0xffffffffffffffe0and $3,$2,$3sltu $4,$5,$3.set noreorder.set nomacrobeq $4,$0,$L386addiu $2,$6,-4.set macro.set reorderaddiu $2,$5,4$L387:#APPpref 30,0($2).word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4#NO_APPsltu $2,$5,$3.set noreorder.set nomacrobne $2,$0,$L387addiu $2,$5,4.set macro.set reorderaddiu $2,$6,-4$L386:li $3,-4 # 0xfffffffffffffffcand $3,$2,$3sltu $4,$5,$3beq $4,$0,$L48$L335:#APP.word 0b01110000101000000000010001010101 #S32SDI XR1,$5,4#NO_APPsltu $2,$5,$3bne $2,$0,$L335$L48:andi $3,$6,0x3li $2,2 # 0x2.set noreorder.set nomacrobeq $3,$2,$L52addiu $4,$5,4.set macro.set reorderli $2,3 # 0x3.set noreorder.set nomacrobeq $3,$2,$L53li $2,1 # 0x1.set macro.set reorderbeq $3,$2,$L349$L50:lw $3,36($16)lw $2,40($16)sltu $2,$3,$2.set noreorder.set nomacrobeq $2,$0,$L54addiu $5,$3,1.set macro.set reorderlw $2,80($16)addu $2,$3,$2lbu $3,0($2)sw $5,36($16)andi $2,$3,0x00ff$L56:sb $2,0($20)lw $3,36($16)lw $6,40($16)sltu $2,$3,$6.set noreorder.set nomacrobeq $2,$0,$L59addiu $5,$3,1.set macro.set reorderlw $2,80($16)addu $2,$3,$2lbu $3,0($2)sw $5,36($16)sll $18,$3,8$L61:sltu $2,$5,$6beq $2,$0,$L64lw $2,80($16)addu $2,$5,$2lbu $3,0($2)addiu $5,$5,1move $17,$3sw $5,36($16)$L66:sltu $2,$5,$6beq $2,$0,$L69lw $2,80($16)addu $2,$5,$2addiu $5,$5,1lbu $3,0($2)sw $5,36($16)$L71:or $2,$18,$17sll $2,$2,8or $2,$3,$2lbu $7,0($20)lui $6,%hi($LC0)sw $2,4($20)addiu $6,$6,%lo($LC0)li $4,7 # 0x7li $5,6 # 0x6.set noreorder.set nomacrojal mp_msgsw $2,16($sp).set macro.set reorderlw $3,36($16)lw $6,40($16)sltu $2,$3,$6.set noreorder.set nomacrobeq $2,$0,$L74addiu $5,$3,1.set macro.set reorderlw $7,80($16)addu $2,$3,$7lbu $3,0($2)sw $5,36($16)$L76:li $2,3 # 0x3.set noreorder.set nomacrobeq $3,$2,$L350sltu $2,$5,$6.set macro.set reorderbeq $2,$0,$L120$L352:lw $2,80($16)addu $2,$5,$2lbu $3,0($2)addiu $5,$5,1sll $17,$3,8sw $5,36($16)$L122:sltu $2,$5,$6beq $2,$0,$L125$L354:lw $2,80($16)addu $2,$5,$2addiu $5,$5,1lbu $2,0($2)sw $5,36($16)$L127:or $2,$2,$17andi $2,$2,0xfffflui $6,%hi($LC2)sh $2,8($20)addiu $6,$6,%lo($LC2)li $4,7 # 0x7li $5,6 # 0x6li $7,2 # 0x2.set noreorder.set nomacrojal mp_msgsw $2,16($sp).set macro.set reorder$L117:lw $3,36($16)lw $2,40($16)sltu $2,$3,$2.set noreorder.set nomacrobeq $2,$0,$L130addiu $5,$3,1.set macro.set reorderlw $7,80($16)addu $2,$3,$7lbu $3,0($2)li $2,4 # 0x4.set noreorder.set nomacrobeq $3,$2,$L135sw $5,36($16).set macro.set reorder$L133:.set noreorder.set nomacrojal uc_freemove $4,$16.set macro.set reorderlw $31,72($sp)lw $21,68($sp)lw $20,64($sp)lw $19,60($sp)lw $18,56($sp)lw $17,52($sp)lw $16,48($sp)li $2,1 # 0x1.set noreorder.set nomacroj $31addiu $sp,$sp,80.set macro.set reorder$L74:.set noreorder.set nomacrojal stream_fill_buffermove $4,$16.set macro.set reorderbne $2,$0,$L351lw $5,36($16)lw $6,40($16)sltu $2,$5,$6bne $2,$0,$L352$L120:.set noreorder.set nomacrojal stream_fill_buffermove $4,$16.set macro.set reorderbeq $2,$0,$L353lw $5,36($16)lw $2,80($16)lw $6,40($16)addu $2,$2,$5lbu $3,0($2)addiu $5,$5,1sltu $2,$5,$6sw $5,36($16).set noreorder.set nomacrobne $2,$0,$L354sll $17,$3,8.set macro.set reorder$L125:.set noreorder.set nomacrojal stream_fill_buffermove $4,$16.set macro.set reorderbeq $2,$0,$L355lw $3,36($16)lw $2,80($16)addiu $5,$3,1addu $2,$2,$3lbu $2,0($2).set noreorder.set nomacroj $L127sw $5,36($16).set macro.set reorder$L69:.set noreorder.set nomacrojal stream_fill_buffermove $4,$16.set macro.set reorderbeq $2,$0,$L356lw $2,36($16)lw $3,80($16)addiu $5,$2,1addu $3,$3,$2lbu $4,0($3)sw $5,36($16).set noreorder.set nomacroj $L71move $3,$4.set macro.set reorder$L64:.set noreorder.set nomacrojal stream_fill_buffermove $4,$16.set macro.set reorderbeq $2,$0,$L357lw $5,36($16)lw $2,80($16)lw $6,40($16)addu $2,$2,$5lbu $3,0($2)addiu $5,$5,1move $17,$3.set noreorder.set nomacroj $L66sw $5,36($16).set macro.set reorder$L59:.set noreorder.set nomacrojal stream_fill_buffermove $4,$16.set macro.set reorderbeq $2,$0,$L358lw $5,36($16)lw $2,80($16)lw $6,40($16)addu $2,$2,$5lbu $3,0($2)addiu $5,$5,1sll $18,$3,8.set noreorder.set nomacroj $L61sw $5,36($16).set macro.set reorder$L54:.set noreorder.set nomacrojal stream_fill_buffermove $4,$16.set macro.set reorderbeq $2,$0,$L56lw $2,36($16)lw $3,80($16)addiu $5,$2,1addu $3,$3,$2lbu $4,0($3)sw $5,36($16).set noreorder.set nomacroj $L56andi $2,$4,0x00ff.set macro.set reorder$L41:addiu $4,$20,2sb $0,0($20).set noreorder.set nomacroj $L39sb $0,1($20).set macro.set reorder$L52:sb $0,4($5).set noreorder.set nomacroj $L50sb $0,1($4).set macro.set reorder$L130:.set noreorder.set nomacrojal stream_fill_buffermove $4,$16.set macro.set reorderbeq $2,$0,$L133lw $2,36($16)lw $7,80($16)addiu $5,$2,1addu $2,$7,$2lbu $3,0($2)li $2,4 # 0x4.set noreorder.set nomacrobne $3,$2,$L133sw $5,36($16).set macro.set reorder$L135:lw $3,36($16)lw $6,40($16)sltu $2,$3,$6.set noreorder.set nomacrobeq $2,$0,$L136addu $2,$3,$7.set macro.set reorderaddiu $5,$3,1lbu $2,0($2)sw $5,36($16)$L138:andi $2,$2,0x00ffsll $3,$2,24sra $3,$3,24.set noreorder.set nomacrobgez $3,$L141andi $17,$2,0x7f.set macro.set reordersltu $2,$5,$6.set noreorder.set nomacrobeq $2,$0,$L143addu $2,$5,$7.set macro.set reorderaddiu $5,$5,1lbu $2,0($2)sw $5,36($16)$L145:andi $2,$2,0x00ffsll $4,$2,24sll $3,$17,7andi $2,$2,0x7fsra $4,$4,24.set noreorder.set nomacrobgez $4,$L141or $17,$3,$2.set macro.set reordersltu $2,$5,$6.set noreorder.set nomacrobeq $2,$0,$L149addu $2,$5,$7.set macro.set reorderaddiu $5,$5,1lbu $2,0($2)sw $5,36($16)$L151:andi $2,$2,0x00ffsll $4,$2,24sll $3,$17,7andi $2,$2,0x7fsra $4,$4,24.set noreorder.set nomacrobgez $4,$L141or $17,$3,$2.set macro.set reordersltu $2,$5,$6.set noreorder.set nomacrobeq $2,$0,$L154addu $2,$5,$7.set macro.set reorderaddiu $5,$5,1lbu $2,0($2)sw $5,36($16)$L156:sll $3,$17,7andi $2,$2,0x7for $17,$3,$2$L141:sltu $2,$5,$6.set noreorder.set nomacrobeq $2,$0,$L158andi $21,$17,0xffff.set macro.set reorderlw $2,80($16)addu $2,$5,$2lbu $3,0($2)addiu $5,$5,1andi $3,$3,0x00ffsw $5,36($16)$L160:sb $3,11($20)lw $3,36($16)lw $2,40($16)sltu $2,$3,$2.set noreorder.set nomacrobeq $2,$0,$L163addiu $5,$3,1.set macro.set reorderlw $2,80($16)addu $2,$3,$2lbu $3,0($2)sw $5,36($16)andi $2,$3,0x00ff$L165:sb $2,12($20)lw $3,36($16)lw $6,40($16)sltu $2,$3,$6.set noreorder.set nomacrobeq $2,$0,$L168addiu $5,$3,1.set macro.set reorderlw $2,80($16)addu $2,$3,$2lbu $3,0($2)sw $5,36($16)sll $18,$3,8$L170:sltu $2,$5,$6beq $2,$0,$L173lw $2,80($16)addu $2,$5,$2lbu $3,0($2)addiu $5,$5,1move $17,$3sw $5,36($16)$L175:sltu $2,$5,$6beq $2,$0,$L178lw $2,80($16)addu $2,$5,$2addiu $5,$5,1lbu $3,0($2)sw $5,36($16)$L180:or $2,$18,$17sll $2,$2,8or $2,$3,$2sw $2,16($20)lw $3,36($16)lw $6,40($16)sltu $2,$3,$6.set noreorder.set nomacrobeq $2,$0,$L183addiu $5,$3,1.set macro.set reorderlw $2,80($16)addu $2,$3,$2lbu $3,0($2)sw $5,36($16)sll $19,$3,8$L185:sltu $2,$5,$6beq $2,$0,$L188lw $2,80($16)addu $2,$5,$2lbu $3,0($2)addiu $5,$5,1move $18,$3sw $5,36($16)$L190:sltu $2,$5,$6beq $2,$0,$L193lw $2,80($16)addu $2,$5,$2lbu $3,0($2)addiu $5,$5,1move $17,$3sw $5,36($16)$L195:sltu $2,$5,$6beq $2,$0,$L198lw $2,80($16)addu $2,$5,$2addiu $5,$5,1lbu $3,0($2)sw $5,36($16)$L200:or $2,$19,$18sll $2,$2,8or $2,$2,$17sll $2,$2,8or $2,$2,$3sw $2,20($20)lw $3,36($16)lw $6,40($16)sltu $2,$3,$6.set noreorder.set nomacrobeq $2,$0,$L203addiu $5,$3,1.set macro.set reorderlw $2,80($16)addu $2,$3,$2lbu $3,0($2)sw $5,36($16)sll $19,$3,8$L205:sltu $2,$5,$6beq $2,$0,$L208lw $2,80($16)addu $2,$5,$2lbu $3,0($2)addiu $5,$5,1move $18,$3sw $5,36($16)$L210:sltu $2,$5,$6beq $2,$0,$L213lw $2,80($16)addu $2,$5,$2lbu $3,0($2)addiu $5,$5,1move $17,$3sw $5,36($16)$L215:sltu $2,$5,$6beq $2,$0,$L218lw $2,80($16)addu $2,$5,$2addiu $5,$5,1lbu $3,0($2)sw $5,36($16)$L220:or $2,$18,$19sll $2,$2,8or $2,$17,$2sll $2,$2,8lw $5,16($20)lw $4,20($20)or $17,$3,$2lbu $3,11($20)lbu $2,12($20)sw $17,24($20)sw $5,24($sp)sw $3,16($sp).set noreorder.set nomacrojal __floatsidfsw $2,20($sp).set macro.set reordermove $4,$2lw $2,20($20).set noreorder.set nomacrobltz $2,$L359move $5,$3.set macro.set reorder$L223:lui $2,%hi($LC5)lw $18,%lo($LC5)($2)lw $19,%lo($LC5+4)($2)move $6,$18.set noreorder.set nomacrojal __muldf3
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?