Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F4216
frag.py
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
4 KB
Referenced Files
None
Subscribers
None
frag.py
View Options
import
k.db
as
kdb
import
k.storage
as
media
from
.ui
import
Player
as
UI
from
.core
import
Resource
,
Tracker
from
.video
import
Player
as
Video
class
Chaos
(
UI
):
def
__init__
(
self
,
k
,
frag_id
,
loop
=
None
,
jumps
=
None
):
# We intentionally do NOT call super().__init__()
self
.
frag_id
=
frag_id
go
=
'ko'
try
:
frag
=
kdb
.
get_frag
(
self
.
frag_id
)
frag_type
=
frag
[
'media'
]
source
=
frag
[
'source'
]
start
=
frag
[
'start'
]
stop
=
frag
[
'stop'
]
if
frag_type
==
kdb
.
MEDIA_VIDEO
:
res
=
Resource
(
source
,
k
.
imagine
)
trk
=
Tracker
(
res
,
begin
=
start
,
end
=
stop
)
go
=
Video
(
k
,
trk
,
loop
,
jumps
)
else
:
raise
ValueError
(
f
'frag {frag_id} unsupported media type: {frag_type}'
)
except
Exception
as
e
:
print
(
f
'Chaos--! frag {go} boom!-- player'
)
print
(
f
' !!! {e}'
)
go
=
None
self
.
go
=
go
def
reset
(
self
):
if
not
self
.
go
:
return
self
.
go
.
reset
()
def
kill
(
self
,
replace
=
False
):
if
not
self
.
go
:
return
self
.
go
.
kill
(
replace
)
@property
def
panel_chaos
(
self
):
if
not
self
.
go
:
return
None
return
self
.
go
.
panel_chaos
@property
def
playing
(
self
):
if
not
self
.
go
:
return
None
return
self
.
go
.
playing
@property
def
trk
(
self
):
if
not
self
.
go
:
return
None
return
self
.
go
.
trk
def
play
(
self
):
if
not
self
.
go
:
return
self
.
go
.
play
()
def
pause
(
self
):
if
not
self
.
go
:
return
self
.
go
.
pause
()
def
stop
(
self
):
if
not
self
.
go
:
return
self
.
go
.
stop
()
def
seek
(
self
,
frame
):
if
not
self
.
go
:
return
self
.
go
.
seek
()
def
update_frame
(
self
,
frame
):
if
not
self
.
go
:
return
self
.
go
.
update_frame
(
frame
)
def
tick
(
self
):
if
not
self
.
go
:
return
self
.
go
.
tick
()
def
paint
(
self
):
if
not
self
.
go
:
return
self
.
go
.
paint
()
def
paint_thumb
(
self
):
if
not
self
.
go
:
return
self
.
go
.
paint_thumb
()
def
paint_video
(
self
):
if
not
self
.
go
:
return
self
.
go
.
paint_video
()
def
paint_image
(
self
):
if
not
self
.
go
:
return
self
.
go
.
paint_image
()
def
paint_loop_bar
(
self
):
if
not
self
.
go
:
return
self
.
go
.
paint_loop_bar
()
def
size_to_fit
(
self
,
width
,
height
):
if
not
self
.
go
:
return
self
.
go
.
size_to_fit
(
width
,
height
)
def
click
(
self
,
element
,
target
=
None
):
if
not
self
.
go
:
return
self
.
go
.
click
(
element
,
target
)
def
mouse_down
(
self
,
event
):
if
not
self
.
go
:
return
self
.
go
.
mouse_down
(
event
)
def
mouse_up
(
self
,
event
):
if
not
self
.
go
:
return
self
.
go
.
mouse_up
(
event
)
def
keydown
(
self
,
key
,
mod
):
if
not
self
.
go
:
return
self
.
go
.
keydown
(
key
,
mod
)
def
keyup
(
self
,
key
,
mod
):
if
not
self
.
go
:
return
self
.
go
.
keyup
(
key
,
mod
)
def
keyhold
(
self
,
key
,
magic
=
False
):
if
not
self
.
go
:
return
self
.
go
.
keyhold
(
key
,
magic
)
def
op_start
(
self
):
if
not
self
.
go
:
return
self
.
go
.
op_start
()
def
op_stop
(
self
):
if
not
self
.
go
:
return
self
.
go
.
op_stop
()
def
op_seek
(
self
):
if
not
self
.
go
:
return
self
.
go
.
op_seek
()
def
op_hold
(
self
):
if
not
self
.
go
:
return
self
.
go
.
op_hold
()
def
op_unhold
(
self
):
if
not
self
.
go
:
return
self
.
go
.
op_unhold
()
class
Null
(
Tracker
):
def
__init__
(
self
,
resource
=
None
,
begin
=
0
,
end
=
None
):
if
not
resource
:
resource
=
Void
()
super
()
.
__init__
(
resource
,
begin
,
end
)
def
play
(
self
):
pass
def
pause
(
self
):
pass
def
tick
(
self
):
return
None
class
Void
(
Resource
):
def
__init__
(
self
,
video_id
=
None
):
self
.
video_id
=
video_id
self
.
frames
=
0
self
.
fps
=
999
self
.
img
=
None
self
.
size
=
[
0
,
0
]
def
kill
(
self
):
pass
def
get
(
self
,
frame
,
seeking
=
False
):
return
None
def
play
(
self
):
pass
def
pause
(
self
):
pass
def
stop
(
self
):
pass
File Metadata
Details
Attached
Mime Type
text/x-script.python
Expires
Sat, Sep 12, 9:59 PM (2 w, 2 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3500
Default Alt Text
frag.py (4 KB)
Attached To
Mode
rK Media System
Attached
Detach File
Event Timeline
Log In to Comment