History

do not stuck when mcfs failed to extract audio

Sigrid Solveig Haflínudóttir committed 5 years ago

Commit 14a76c31 parent eee770d1 file · +11 −12Browse files

Unified · Split

main.c+11−12
@@ -29,20 +29,26 @@ audioproc(void *x) · 28 unmodified lines
2929 {
3030 Streamframe f;
3131 Stream *s;
32− int audiofd;
32+ int audiofd, synced;
3333
34+ synced = 0;
3435 if((audiofd = open("/dev/audio", OWRITE|OCEXEC)) < 0){
3536 fprint(2, "runaudio: %r\n");
36− recvp(audiosync);
37− chanclose(audiosync);
3837 }else{
3938 for(s = x; Sread(s, &f) == 0 && f.sz > 0;){
40− recvp(audiosync);
41− chanclose(audiosync);
39+ if(!synced){
40+ recvp(audiosync);
41+ chanclose(audiosync);
42+ synced = 1;
43+ }
4244 write(audiofd, f.buf, f.sz);
4345 }
4446 close(audiofd);
4547 }
48+ if(!synced){
49+ recvp(audiosync);
50+ chanclose(audiosync);
51+ }
4652
4753 sendp(audiofinished, nil);
4854
@@ -140,7 +146,6 @@ threadmain(int argc, char **argv) · 91 unmodified lines
140146 Cresize,
141147 Cnum,
142148 };
143− Streamframe f;
144149 Frame *frame;
145150 Mousectl *mctl;
146151 Keyboardctl *kctl;
@@ -285,12 +290,6 @@ threadmain(int argc, char **argv) · 138 unmodified lines
285290 unlockdisplay(display);
286291 break;
287292 }
288−
289− for(; !end && audiofd >= 0 && saudio != nil;){
290− if(Sread(saudio, &f) != 0 || f.sz == 0)
291− break;
292− write(audiofd, f.buf, f.sz);
293− }
294293 }
295294
296295 if(forced && saudio != nil){

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t