Toggle navigation
Toggle navigation
This project
Loading...
Sign in
OnePoem
/
OnePoem-Server
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Snippets
Network
Create a new issue
Builds
Commits
Issue Boards
Authored by
李帅
2022-04-14 17:32:16 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
f986db46a0bdbd5d67c332f5687d638546fb81c9
f986db46
1 parent
b5caee31
1.首页接口实现。
2.支持用户端上传。
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
37 additions
and
8 deletions
app/Console/Commands/DevFFmpeg.php
app/Http/Controllers/V1/HomeController.php
app/Http/Controllers/V1/ImmerseController.php
app/Models/Immerse.php
app/Models/User.php
app/Console/Commands/DevFFmpeg.php
View file @
f986db4
...
...
@@ -8,6 +8,7 @@ use App\Models\VideoTemp;
use
Carbon\Carbon
;
use
Illuminate\Console\Command
;
use
Illuminate\Support\Facades\Storage
;
use
Illuminate\Support\Str
;
use
voku\helper\ASCII
;
class
DevFFmpeg
extends
Command
...
...
@@ -49,10 +50,7 @@ class DevFFmpeg extends Command
*/
public
function
handle
()
{
$a
=
<<<AAA
/usr/bin/ffmpeg -y -i '/usr/local/nginx/html/OnePoem/storage/app/public/files/65f944c1bf4458a324440ceea44c993c.mp4' -i '/usr/local/nginx/html/OnePoem/storage/app/public/temp/88/350/output_1649906074717.mp4' -i '/usr/local/nginx/html/OnePoem/storage/app/public/ffmpeg/LOGO_eng.png' -filter_complex "[0:0]drawtext="fontfile='/usr/local/nginx/html/OnePoem/storage/app/public/ffmpeg/arialuni.ttf':text='佳节清明桃李笑,野田荒冢只生愁。\\n雷惊天地龙蛇蛰,雨足郊原草木柔。\\n人乞祭余骄妾妇,士甘焚死不公侯。\\n贤愚千载知谁是,满眼蓬蒿共一丘。\\n':fontsize=26:fontcolor=white@1.0:x='(w-text_w)/2':y='(h-text_h)/2':box=1:boxcolor=0xd0cdcc@0.5",drawtext="fontfile='/usr/local/nginx/html/OnePoem/storage/app/public/ffmpeg/arialuni.ttf':text='2022年04月14日11时':fontsize=31:fontcolor=white@1.0:x='(w-text_w)/2':y='text_h':box=1:boxcolor=0xd0cdcc@0.5",drawtext="fontfile='/usr/local/nginx/html/OnePoem/storage/app/public/ffmpeg/arialuni.ttf':text='测试有感文本,这里是十五个字。':fontsize=29:fontcolor=white@1.0:x='(w-text_w)/2':y='h-text_h*2':box=1:boxcolor=0xd0cdcc@0.5" [text];[text] [2:v]overlay=20:20[water];[water][0:1][1:0][1:1] concat=n=2:v=1:a=1[v][a]" -map [v] -map [a] -c:v libx264 -bt 256k -r 25 -ar 44100 -ac 2 -qmin 30 -qmax 60 -profile:v baseline -preset fast '/usr/local/nginx/html/OnePoem/storage/app/public/video/181/141/output_16499060769238.mp4'
AAA;
dd
(
Str
::
contains
(
"/Users/lishuai/Documents/source/OnePoem-Server/storage/app/public/ffmpeg/output_16479198841364.mp4"
,
'/storage/app/public/'
));
$path
=
'/Users/lishuai/Desktop/test/'
;
$file
=
$path
.
'qinghuaci.mp4'
;
...
...
app/Http/Controllers/V1/HomeController.php
View file @
f986db4
...
...
@@ -19,10 +19,10 @@ class HomeController extends Controller
public
function
index
()
{
// admin video
$lists
=
Immerse
::
query
()
->
get
();
// user video
return
Response
::
success
(
Immerse
::
query
()
->
get
()
);
return
Response
::
success
();
}
...
...
app/Http/Controllers/V1/ImmerseController.php
View file @
f986db4
...
...
@@ -7,7 +7,9 @@ use App\Models\Immerse;
use
App\Models\UserMakeVideo
;
use
App\Jobs\UserMakeVideo
as
MakeVideo
;
use
Illuminate\Http\Request
;
use
Illuminate\Support\Facades\Storage
;
use
Illuminate\Support\Facades\Validator
;
use
Illuminate\Support\Str
;
use
Jiannei\Response\Laravel\Support\Facades\Response
;
class
ImmerseController
extends
Controller
...
...
@@ -45,13 +47,20 @@ class ImmerseController extends Controller
$validated
=
$validator
->
validated
();
if
(
Str
::
contains
(
$validated
[
'video_url'
],
'//'
)){
$video_url
=
''
;
}
elseif
(
Str
::
contains
(
$validated
[
'video_url'
],
'/storage/app/public/'
)){
$video_url
=
$validated
[
'video_url'
];
}
else
{
$video_url
=
Storage
::
disk
(
'public'
)
->
path
(
$validated
[
'video_url'
]);
}
$immerse
=
Immerse
::
query
()
->
find
(
$request
->
video_id
);
$video
=
UserMakeVideo
::
query
()
->
create
([
'poem_id'
=>
$immerse
->
poem_id
,
'type'
=>
$immerse
->
type
,
'video_url'
=>
$v
alidated
[
'video_url'
]
,
'video_url'
=>
$v
ideo_url
,
'image_url'
=>
$immerse
->
image_url
,
'bg_music'
=>
$immerse
->
bg_music
,
'bgm_url'
=>
$immerse
->
bgm_url
,
...
...
app/Models/Immerse.php
View file @
f986db4
...
...
@@ -5,6 +5,8 @@ namespace App\Models;
use
Dcat\Admin\Traits\HasDateTimeFormatter
;
use
Illuminate\Database\Eloquent\Model
;
use
Illuminate\Support\Facades\Storage
;
use
Illuminate\Support\Str
;
class
Immerse
extends
Model
{
...
...
@@ -17,4 +19,24 @@ class Immerse extends Model
{
}
public
function
getUrlAttribute
(
$url
)
{
if
(
Str
::
contains
(
$url
,
'/storage/app/public/'
))
{
$str
=
Str
::
of
(
$url
)
->
replace
(
'/usr/local/nginx/html/OnePoem/'
,
''
);
return
Storage
::
disk
(
'public'
)
->
url
(
$str
);
}
else
{
return
$url
;
}
}
public
function
getThumbnailAttribute
(
$url
)
{
if
(
Str
::
contains
(
$url
,
'/storage/app/public/'
))
{
$str
=
Str
::
of
(
$url
)
->
replace
(
'/usr/local/nginx/html/OnePoem/'
,
''
);
return
Storage
::
disk
(
'public'
)
->
url
(
$str
);
}
else
{
return
$url
;
}
}
}
...
...
app/Models/User.php
View file @
f986db4
...
...
@@ -45,7 +45,7 @@ class User extends Authenticatable
return
admin_asset
(
'@admin/images/default-avatar.jpg'
);
}
if
(
Str
::
contains
(
'//'
,
$avatar
)){
if
(
Str
::
contains
(
$avatar
,
'//'
)){
return
$avatar
;
}
...
...
Please
register
or
login
to post a comment