Skip to content

prepare 4.1 #161

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 33 commits into from
Jul 1, 2022
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
ba975a5
tf 2.7
previ Jan 21, 2022
e437748
revert tf 2.1
previ Jan 22, 2022
9d5fdf4
bump numpy ver
previ Jan 23, 2022
7c7ee87
bump requirements_stub
previ Jan 24, 2022
ba9729e
bump requirements_stub
previ Jan 24, 2022
80c3b6f
led ws2812b
previ Jan 25, 2022
e14de56
led ws2812b
previ Jan 25, 2022
bcbba45
led ws2812b
previ Jan 25, 2022
f2c224a
led ws2812b
previ Jan 26, 2022
140285d
add listMusicPackages api
previ Jan 29, 2022
d88b342
fix musicPackage export
previ Jan 30, 2022
cfab93b
remove coderbot-copy.py
previ Jan 30, 2022
c90ccf8
fix music package removal
previ Feb 1, 2022
db7bfde
Merge branch 'develop' of https://github.com/CoderBotOrg/backend into…
previ Feb 1, 2022
1c69018
v1 feature parity
previ Feb 1, 2022
0cefff7
fix #155
previ Feb 6, 2022
a6eec09
fix program status and log with v2
previ Feb 7, 2022
d1d3882
update ci
previ Feb 8, 2022
55023d5
add default activity init
previ Mar 6, 2022
5763bc8
add default activity init
previ Mar 7, 2022
a3f291b
add default activity
previ Mar 9, 2022
ca1b990
activity default parameters
previ Mar 12, 2022
c096602
bullseye wip
previ May 28, 2022
fa63bb4
bullseye wip
previ May 29, 2022
5d50a5e
Update audioControls.py
previ May 29, 2022
0f3e5f6
bullseye wip
previ May 29, 2022
1266d83
Update audio.py
previ Jun 8, 2022
e032049
update stock activities
previ Jun 8, 2022
d58a6d8
Update program.py
previ Jun 11, 2022
94e2c76
Update activity_default.json
previ Jun 12, 2022
a1ec6ac
Update coderbot.py
previ Jun 18, 2022
ea027ed
no longer init_activities
previ Jun 28, 2022
c71cfc7
move init_activities on frontend for i18n
previ Jun 28, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
fix #155
  • Loading branch information
previ committed Feb 6, 2022
commit 0cefff7c8ba3d1adcd5eb3dedead5576f4a404d4
3 changes: 2 additions & 1 deletion api.py
Original file line number Diff line number Diff line change
Expand Up @@ -135,7 +135,8 @@ def turn(data):

def exec(data):
program = prog_engine.create(data["name"], data["code"])
return json.dumps(program.execute())
options = data["options"]
return json.dumps(program.execute(options))

## System

Expand Down
7 changes: 5 additions & 2 deletions cv/camera.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@

class Camera(object):

FFMPEG_CMD = 'MP4Box'
FFMPEG_CMD = 'ffmpeg'
PHOTO_FILE_EXT = ".jpg"
VIDEO_FILE_EXT = ".mp4"
VIDEO_FILE_EXT_H264 = '.h264'
Expand Down Expand Up @@ -90,7 +90,10 @@ def video_stop(self):
self.camera.stop_recording(2)

# pack in mp4 container
params = " -fps " + str(self.camera.framerate) + " -add " + self.video_filename + self.VIDEO_FILE_EXT_H264 + " " + self.video_filename + self.VIDEO_FILE_EXT
params = " -loglevel quiet -stats -framerate " + str(self.camera.framerate) + \
" -i " + self.video_filename + self.VIDEO_FILE_EXT_H264 + \
" -c copy " + self.video_filename + self.VIDEO_FILE_EXT

os.system(self.FFMPEG_CMD + params)
# remove h264 file
os.remove(self.video_filename + self.VIDEO_FILE_EXT_H264)
Expand Down
17 changes: 8 additions & 9 deletions program.py
Original file line number Diff line number Diff line change
Expand Up @@ -148,21 +148,19 @@ def dom_code(self):
return self._dom_code

def __init__(self, name, code=None, dom_code=None, default=False):
#super(Program, self).__init__()
self._thread = None
self.name = name
self._dom_code = dom_code
self._code = code
self._default = default

def execute(self):
def execute(self, options={}):
if self._running:
raise RuntimeError('already running')

self._running = True

try:
self._thread = threading.Thread(target=self.run)
self._thread = threading.Thread(target=self.run, args=(options,))
self._thread.start()
except RuntimeError as re:
logging.error("RuntimeError: %s", str(re))
Expand All @@ -187,15 +185,16 @@ def is_running(self):
def is_default(self):
return self._default

def run(self):
def run(self, *args):
options = args[0]
try:
program = self
try:
if config.Config.get().get("prog_video_rec") == "true":
get_cam().video_rec(program.name)
if options.get("autoRecVideo") == True:
get_cam().video_rec(program.name.replace(" ", "_"))
logging.debug("starting video")
except Exception:
logging.error("Camera not available")
except Exception as e:
logging.error("Camera not available: " + str(e))

self._log = "" #clear log
imports = "import json\n"
Expand Down