Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
tank
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Deploy
Releases
Container Registry
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
AURA
tank
Commits
1394ecbc
Commit
1394ecbc
authored
6 years ago
by
Christian Pointner
Browse files
Options
Downloads
Patches
Plain Diff
some cleanup
parent
4878ce98
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
4
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
importer/fetch_converter.go
+3
-7
3 additions, 7 deletions
importer/fetch_converter.go
importer/normalize_converter.go
+3
-7
3 additions, 7 deletions
importer/normalize_converter.go
store/files.go
+4
-3
4 additions, 3 deletions
store/files.go
store/files_metadata.go
+25
-7
25 additions, 7 deletions
store/files_metadata.go
with
35 additions
and
24 deletions
importer/fetch_converter.go
+
3
−
7
View file @
1394ecbc
...
...
@@ -187,15 +187,11 @@ func (c *ffmpegFetchConverter) Wait() (loudness interface{}, log JobLog, err err
exitcode
:=
status
.
ExitStatus
()
c
.
job
.
im
.
dbgLog
.
Printf
(
"ffmpeg-converter: ffmpeg returned %d"
,
exitcode
)
c
.
log
.
append
(
"stdout"
,
fmt
.
Sprintf
(
"ffmpeg returned %d"
,
exitcode
))
}
else
{
c
.
job
.
im
.
errLog
.
Println
(
"ffmpeg-converter: getting exit code of ffmpeg failed:"
,
err
)
c
.
log
.
append
(
"stderr"
,
"ERROR getting exit code of ffmpeg: "
+
err
.
Error
())
return
nil
,
c
.
log
.
log
,
err
}
}
else
{
c
.
job
.
im
.
errLog
.
Println
(
"ffmpeg-converter: getting exit code of ffmpeg failed:"
,
err
)
c
.
log
.
append
(
"stderr"
,
"ERROR getting exit code of ffmpeg: "
+
err
.
Error
())
}
c
.
job
.
im
.
errLog
.
Println
(
"ffmpeg-converter: getting exit code of ffmpeg failed:"
,
err
)
c
.
log
.
append
(
"stderr"
,
"ERROR getting exit code of ffmpeg: "
+
err
.
Error
())
return
nil
,
c
.
log
.
log
,
err
}
...
...
This diff is collapsed.
Click to expand it.
importer/normalize_converter.go
+
3
−
7
View file @
1394ecbc
...
...
@@ -124,15 +124,11 @@ func (c *ffmpegNormalizeConverter) Wait() (log JobLog, err error) {
exitcode
:=
status
.
ExitStatus
()
c
.
job
.
im
.
dbgLog
.
Printf
(
"ffmpeg-converter: ffmpeg returned %d"
,
exitcode
)
c
.
log
.
append
(
"stdout"
,
fmt
.
Sprintf
(
"ffmpeg returned %d"
,
exitcode
))
}
else
{
c
.
job
.
im
.
errLog
.
Println
(
"ffmpeg-converter: getting exit code of ffmpeg failed:"
,
err
)
c
.
log
.
append
(
"stderr"
,
"ERROR getting exit code of ffmpeg: "
+
err
.
Error
())
return
c
.
log
.
log
,
err
}
}
else
{
c
.
job
.
im
.
errLog
.
Println
(
"ffmpeg-converter: getting exit code of ffmpeg failed:"
,
err
)
c
.
log
.
append
(
"stderr"
,
"ERROR getting exit code of ffmpeg: "
+
err
.
Error
())
}
c
.
job
.
im
.
errLog
.
Println
(
"ffmpeg-converter: getting exit code of ffmpeg failed:"
,
err
)
c
.
log
.
append
(
"stderr"
,
"ERROR getting exit code of ffmpeg: "
+
err
.
Error
())
return
c
.
log
.
log
,
err
}
...
...
This diff is collapsed.
Click to expand it.
store/files.go
+
4
−
3
View file @
1394ecbc
...
...
@@ -94,10 +94,11 @@ func (st *Store) UpdateFileImportState(group string, id uint64, state ImportStat
is
[
"source__import__state"
]
=
state
is
[
"source__import__success"
]
=
success
// TODO: this should probably be called
more
explicit?
// TODO: this should probably be called explicit
y
?
if
state
==
ImportDone
{
// TODO: handle returned error...
st
.
SyncFileMetadata
(
group
,
id
)
if
err
:=
st
.
SyncFileMetadataFromFile
(
group
,
id
);
err
!=
nil
{
return
nil
,
err
}
}
if
err
:=
st
.
db
.
Model
(
&
file
)
.
Where
(
"group_name = ?"
,
group
)
.
Update
(
is
)
.
Error
;
err
!=
nil
{
...
...
This diff is collapsed.
Click to expand it.
store/files_metadata.go
+
25
−
7
View file @
1394ecbc
...
...
@@ -30,11 +30,13 @@ import (
"encoding/json"
"fmt"
"os/exec"
"syscall"
"time"
)
type
ffprobeFormat
struct
{
NumStreams
uint
`json:"nb_streams"`
NumPrograms
uint
`json:"nb_programs"`
FormatName
string
`json:"format_name"`
DurationSec
string
`json:"duration"`
Size
string
`json:"size"`
...
...
@@ -46,18 +48,24 @@ type ffprobeOutput struct {
Format
ffprobeFormat
`json:"format"`
}
func
(
st
*
Store
)
SyncFileMetadata
(
group
string
,
id
uint64
)
(
err
error
)
{
func
(
st
*
Store
)
SyncFileMetadata
FromFile
(
group
string
,
id
uint64
)
error
{
filename
:=
st
.
GetFilePath
(
group
,
id
)
ctx
,
cancel
:=
context
.
WithTimeout
(
context
.
Background
(),
1
0
*
time
.
Second
)
ctx
,
cancel
:=
context
.
WithTimeout
(
context
.
Background
(),
6
0
*
time
.
Second
)
defer
cancel
()
// cmd := exec.CommandContext(ctx, "ffprobe", "-hide_banner", "-print_format", "json", "-show_format", filename)
cmd
:=
exec
.
CommandContext
(
ctx
,
"ffprobe"
,
"-print_format"
,
"json"
,
"-show_format"
,
filename
)
var
stdout
,
stderr
bytes
.
Buffer
cmd
.
Stdout
=
&
stdout
cmd
.
Stderr
=
&
stderr
// TODO: handle stderr...
if
err
=
cmd
.
Run
();
err
!=
nil
{
return
cmd
.
Stderr
=
&
stderr
if
err
:=
cmd
.
Run
();
err
!=
nil
{
if
exiterr
,
ok
:=
err
.
(
*
exec
.
ExitError
);
ok
{
if
status
,
ok
:=
exiterr
.
Sys
()
.
(
syscall
.
WaitStatus
);
ok
{
// TODO: handle stderr?
return
fmt
.
Errorf
(
"ffprobe returned %d"
,
status
.
ExitStatus
())
}
}
return
fmt
.
Errorf
(
"getting exit code of ffprobe failed:"
,
err
)
}
var
output
ffprobeOutput
...
...
@@ -65,8 +73,18 @@ func (st *Store) SyncFileMetadata(group string, id uint64) (err error) {
if
err
:=
jd
.
Decode
(
&
output
);
err
!=
nil
{
return
err
}
d
,
err
:=
time
.
ParseDuration
(
output
.
Format
.
DurationSec
+
"s"
)
if
err
!=
nil
{
return
fmt
.
Errorf
(
"unable to parse duration from ffprobe output:"
,
err
)
}
// TODO: store metadata in database
fmt
.
Printf
(
"ffprobe output: %+v"
,
output
)
return
fmt
.
Printf
(
"**************** ffprobe output ****************
\n
"
)
fmt
.
Printf
(
"found %d/%d streams/programs
\n
"
,
output
.
Format
.
NumStreams
,
output
.
Format
.
NumPrograms
)
fmt
.
Printf
(
"Format: %s, Duration: %v
\n
"
,
output
.
Format
.
FormatName
,
d
)
fmt
.
Printf
(
"Tags:
\n
"
)
for
k
,
v
:=
range
output
.
Format
.
Tags
{
fmt
.
Printf
(
"
\t
%s: %s
\n
"
,
k
,
v
)
}
return
nil
}
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment