Mercurial > cgi-bin > hgwebdir.cgi > PR > Applications > VSs > VSs__H264__App
comparison libavcodec/h264_ompss.c @ 6:55fb61482128
VSs working
| author | Nina Engelhardt <nengel@mailbox.tu-berlin.de> |
|---|---|
| date | Wed, 06 Mar 2013 14:35:39 +0100 |
| parents | 808fe898c011 |
| children | c8259123d224 |
comparison
equal
deleted
inserted
replaced
| 3:da9d5e255731 | 4:b3c99b2b41db |
|---|---|
| 211 SuperMBContext *smbc = args->smbc; | 211 SuperMBContext *smbc = args->smbc; |
| 212 int line = *(args->line); | 212 int line = *(args->line); |
| 213 H264Slice *s = &sbe->slice; | 213 H264Slice *s = &sbe->slice; |
| 214 for (int i=line*smbc->smb_height; i< (line+1)*smbc->smb_height && i< d->mb_height; i++) | 214 for (int i=line*smbc->smb_height; i< (line+1)*smbc->smb_height && i< d->mb_height; i++) |
| 215 draw_edges(d, s, i); | 215 draw_edges(d, s, i); |
| 216 VMS_App__free(args->line); | |
| 216 VSs__end_task( animatingSlv ); | 217 VSs__end_task( animatingSlv ); |
| 217 } | 218 } |
| 218 VSsTaskType draw_edges_taskType = { | 219 VSsTaskType draw_edges_taskType = { |
| 219 .fn = &draw_edges_task, | 220 .fn = &draw_edges_task, |
| 220 .numCtldArgs = 3, | 221 .numCtldArgs = 3, |
| 574 //#pragma omp critical (dpb) | 575 //#pragma omp critical (dpb) |
| 575 VSs__start_critical(animatingSlv,0); | 576 VSs__start_critical(animatingSlv,0); |
| 576 release_dpb_entry(h, out, 1); | 577 release_dpb_entry(h, out, 1); |
| 577 VSs__end_critical(animatingSlv,0); | 578 VSs__end_critical(animatingSlv,0); |
| 578 } | 579 } |
| 579 print_report(oc->frame_number, oc->video_size, 0, h->verbose); | 580 //print_report(oc->frame_number, oc->video_size, 0, h->verbose); |
| 580 | 581 |
| 581 VSs__end_task( animatingSlv ); | 582 VSs__end_task( animatingSlv ); |
| 582 } | 583 } |
| 583 | 584 |
| 584 VSsTaskType output_taskType = { | 585 VSsTaskType output_taskType = { |
| 695 taskID[1] = 5; | 696 taskID[1] = 5; |
| 696 taskID[2] = k; | 697 taskID[2] = k; |
| 697 VSs__submit_task_with_ID(&init_ref_list_and_get_dpb_taskType, &init_ref_list_and_get_dpb_task_args, taskID, animSlv); | 698 VSs__submit_task_with_ID(&init_ref_list_and_get_dpb_taskType, &init_ref_list_and_get_dpb_task_args, taskID, animSlv); |
| 698 | 699 |
| 699 smbc = acquire_smbc(h); | 700 smbc = acquire_smbc(h); |
| 700 SuperMBTask *lastsmb= add_decode_slice_3dwave_tasks(rc[k%2], &sbe[k%bufs], smbc, k, animSlv); | 701 SuperMBTask *lastsmb= add_decode_slice_3dwave_tasks(rc[k%2], &sbe[k%bufs], smbc, k, animSlv); |
| 701 release_ref_list_taskArgs release_ref_list_task_args; | 702 release_ref_list_taskArgs release_ref_list_task_args; |
| 702 release_ref_list_task_args.h = h; | 703 release_ref_list_task_args.h = h; |
| 703 release_ref_list_task_args.smbc = smbc; | 704 release_ref_list_task_args.smbc = smbc; |
| 704 release_ref_list_task_args.d = rc[k%2]; | 705 release_ref_list_task_args.d = rc[k%2]; |
| 705 release_ref_list_task_args.sbe = &sbe[k%bufs]; | 706 release_ref_list_task_args.sbe = &sbe[k%bufs]; |
| 800 //#pragma omp taskwait | 801 //#pragma omp taskwait |
| 801 VSs__taskwait(animSlv); | 802 VSs__taskwait(animSlv); |
| 802 | 803 |
| 803 while ((out=output_frame(h, oc, NULL, h->ofile, h->frame_width, h->frame_height))) ; | 804 while ((out=output_frame(h, oc, NULL, h->ofile, h->frame_width, h->frame_height))) ; |
| 804 | 805 |
| 805 print_report(oc->frame_number, oc->video_size, 1, h->verbose); | 806 //print_report(oc->frame_number, oc->video_size, 1, h->verbose); |
| 806 h->num_frames = oc->frame_number; | 807 h->num_frames = oc->frame_number; |
| 807 /* finished ! */ | 808 /* finished ! */ |
| 808 | 809 |
| 809 free_parse_context(pc); | 810 free_parse_context(pc); |
| 810 free_nal_context (nc); | 811 free_nal_context (nc); |
