Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
917044d9
Commit
917044d9
authored
Nov 04, 1991
by
Guido van Rossum
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Cosmetics, single buffering, block when not running, etc...
parent
c402ece5
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
62 additions
and
46 deletions
+62
-46
Demo/sgi/video/video.py
Demo/sgi/video/video.py
+62
-46
No files found.
Demo/sgi/video/video.py
View file @
917044d9
...
...
@@ -19,8 +19,13 @@ def openspkr():
conf
.
setwidth
(
AL
.
SAMPLE_16
)
conf
.
setchannels
(
AL
.
MONO
)
return
al
.
openport
(
'spkr'
,
'w'
,
conf
)
def
openvideo
(
name
):
f
=
open
(
name
,
'r'
)
try
:
f
=
open
(
name
,
'r'
)
except
:
sys
.
stderr
.
write
(
name
+
': cannot open
\
n
'
)
sys
.
exit
(
1
)
line
=
f
.
readline
()
if
not
line
:
raise
EndOfFile
if
line
[:
4
]
=
'CMIF'
:
line
=
f
.
readline
()
...
...
@@ -28,6 +33,7 @@ def openvideo(name):
if
len
(
x
)
=
3
:
w
,
h
,
pf
=
x
else
:
w
,
h
=
x
;
pf
=
2
return
f
,
w
,
h
,
pf
def
loadframe
(
f
,
w
,
h
,
pf
,
af
,
spkr
):
line
=
f
.
readline
()
if
line
=
''
:
...
...
@@ -57,56 +63,66 @@ def loadframe(f,w,h,pf,af,spkr):
ct
=
time
.
millitimer
()
-
epoch
.
epoch
if
tijd
>
0
and
ct
<
tijd
:
time
.
millisleep
(
tijd
-
ct
)
swapbuffers
()
#
swapbuffers()
return
tijd
def
playsound
(
af
,
spkr
):
nsamp
=
spkr
.
getfillable
()
data
=
af
.
read
(
nsamp
*
2
)
spkr
.
writesamps
(
data
)
def
main
():
if
len
(
sys
.
argv
)
>
1
:
f
,
w
,
h
,
pf
=
openvideo
(
sys
.
argv
[
1
])
else
:
f
,
w
,
h
,
pf
=
openvideo
(
'film.video'
)
af
=
None
spkr
=
None
if
len
(
sys
.
argv
)
>
2
:
af
=
open
(
sys
.
argv
[
2
],
'r'
)
spkr
=
openspkr
()
if
len
(
sys
.
argv
)
>
3
:
data
=
af
.
read
(
eval
(
sys
.
argv
[
3
]))
del
data
foreground
()
prefsize
(
w
,
h
)
win
=
winopen
(
'Video player'
)
RGBmode
()
doublebuffer
()
gconfig
()
qdevice
(
ESCKEY
)
running
=
1
epoch
.
epoch
=
time
.
millitimer
()
nframe
=
0
tijd
=
1
try
:
while
1
:
if
running
:
try
:
tijd
=
loadframe
(
f
,
w
,
h
,
pf
,
af
,
spkr
)
nframe
=
nframe
+
1
except
EndOfFile
:
running
=
0
t
=
time
.
millitimer
()
if
tijd
>
0
:
print
'Recorded at '
,
nframe
*
1000.0
/
tijd
,
print
'frames/second ('
,
tijd
,
'ms total)'
print
'Played at'
,
nframe
*
1000.0
/
(
t
-
epoch
.
epoch
),
print
'frames/second'
if
af
<>
None
:
playsound
(
af
,
spkr
)
if
qtest
():
if
qread
()
=
(
ESCKEY
,
1
):
raise
bye
except
bye
:
pass
foreground
()
if
len
(
sys
.
argv
)
>
1
:
filename
=
sys
.
argv
[
1
]
else
:
filename
=
'film.video'
f
,
w
,
h
,
pf
=
openvideo
(
filename
)
if
len
(
sys
.
argv
)
>
2
:
audiofilename
=
sys
.
argv
[
2
]
af
=
open
(
audiofilename
,
'r'
)
spkr
=
openspkr
()
if
len
(
sys
.
argv
)
>
3
:
af
.
seek
(
eval
(
sys
.
argv
[
3
]))
else
:
af
,
spkr
=
None
,
None
prefsize
(
w
,
h
)
win
=
winopen
(
filename
)
RGBmode
()
#doublebuffer()
gconfig
()
qdevice
(
ESCKEY
)
qdevice
(
WINSHUT
)
qdevice
(
WINQUIT
)
running
=
1
epoch
.
epoch
=
time
.
millitimer
()
nframe
=
0
tijd
=
1
try
:
while
1
:
if
running
:
try
:
tijd
=
loadframe
(
f
,
w
,
h
,
pf
,
af
,
spkr
)
nframe
=
nframe
+
1
except
EndOfFile
:
running
=
0
t
=
time
.
millitimer
()
if
tijd
>
0
:
print
'Recorded at'
,
print
0.1
*
int
(
nframe
*
10000.0
/
tijd
),
print
'frames/sec'
print
'Played'
,
nframe
,
'frames at'
,
print
0.1
*
int
(
nframe
*
10000.0
/
(
t
-
epoch
.
epoch
)),
print
'frames/sec'
if
af
<>
None
:
playsound
(
af
,
spkr
)
if
not
running
or
qtest
():
dev
,
val
=
qread
()
if
dev
in
(
ESCKEY
,
WINSHUT
,
WINQUIT
):
raise
bye
elif
dev
=
REDRAW
:
reshapeviewport
()
except
bye
:
pass
main
()
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment