Authored by Lixiaodi

Merge branch 'test6.8.4' of http://git.yoho.cn/ufo/ufo-platform into test6.8.4

... ... @@ -43,7 +43,7 @@ public class QNLiveUtilService {
private static String FILEKEY_PRE = "ufo/live/m3u8/"; // 码流文件路径
public static String MP4_FILEKEY_PRE = "ufo/live/mp4/"; // mp4文件路径
public static String MP4_FILEKEY_PRE = QNliveConstants.MP4_FILEKEY_PRE; // mp4文件路径
// private static String FETCH_URL_PRE = "http://yoho-live-down.yohobuy.com/"; // 获取直播流的url
... ...
... ... @@ -66,7 +66,8 @@ public class QNUploadServiceImpl implements IQNUploadService {
public static void main(String[] args) throws Exception{
fetch("9790249123840_1545555597", "http://yoho-live-down.yohobuy.com/yoho13/yoho.m3u8", "1545555597", "1545555619");
//fetch("9790249123840_1545555597", "http://yoho-live-down.yohobuy.com/yoho13/yoho.m3u8", "1545555597", "1545555619");
fetch();
transfer();
}
... ... @@ -131,7 +132,7 @@ url = "http://yoho-live-down.yohobuy.com/yoho13/yoho.m3u8?starttime=1545530300&e
}
}
// http://api.qiniu.com/status/get/prefop?id=z0.5c1b4c0138b9f349c8bb9c46 查看文件的状态
// http://api.qiniu.com/status/get/prefop?id=z0.5c208c6a38b9f349c82caca2 查看文件的状态
// http://flv01.static.yhbimg.com/ufo/live/mp4/yohotest15.mp4
private static void transfer() {
//String m3u8Address = "http://yoho-live-down.yohobuy.com/yoho13/yoho.m3u8";
... ... @@ -144,7 +145,7 @@ url = "http://yoho-live-down.yohobuy.com/yoho13/yoho.m3u8?starttime=1545530300&e
//设置要转码的空间和key,并且这个key在你空间中存在
String bucket = "yhbflv";
String key = "ufo/live/m3u8/9790249123840_1545530300.m3u8"; // 14 4 分钟 15 3分钟
key = "ufo/live/m3u8/9790249123840_1545555597.m3u8";
key = "ufo/live/m3u8/9790249123840_1545530300.m3u8";
//设置转码操作参数 1920x1080 1280x720 848x480
String fops = "avthumb/mp4/s/1280x720/vb/1m/an/1/hr/0/r/30";
... ... @@ -152,10 +153,10 @@ url = "http://yoho-live-down.yohobuy.com/yoho13/yoho.m3u8?starttime=1545530300&e
//设置转码的队列
String pipeline = "yoho-m3u8-to-mp4";
//可以对转码后的文件进行使用saveas参数自定义命名,当然也可以不指定文件会默认命名并保存在当前空间。
String urlbase64 = UrlSafeBase64.encodeToString("yhbflv:ufo/live/mp4/9790249123840_1545555597.mp4");
String urlbase64 = UrlSafeBase64.encodeToString("yhbflv:ufo/live/mp4/9790249123840_1545530300.mp4");
String pfops = fops + "|saveas/" + urlbase64;
//设置pipeline参数 http://java-yohoufo-fore.test3.ingress.dev.yohocorp.com/ufo-gateway/ufoLive/ufo_avthumb_notify
StringMap params = new StringMap().putWhen("force", 1, true).putNotEmpty("pipeline", pipeline).put("notifyURL", "http://testapi.yohops.com/ufoLive/ufo_avthumb_notify");
StringMap params = new StringMap().putWhen("force", 1, true).putNotEmpty("pipeline", pipeline).put("notifyURL", "http://2.yohobuy.com/ufoLive/ufo_avthumb_notify");
try {
String persistid = operater.pfop(bucket, key, pfops, params);
//打印返回的persistid
... ...
... ... @@ -82,4 +82,13 @@ public class UfoLiveController {
return new ApiResponse.ApiResponseBuilder().code(200).data(initCameraCode).message("查询成功").build();
}
@RequestMapping(value = "/queryCurrentTime")
public ApiResponse queryCurrentTime() {
LOGGER.info("queryCurrentTime method in.");
Integer currentTime = ufoLiveService.queryCurrentTime();
return new ApiResponse.ApiResponseBuilder().code(200).data(currentTime).message("获取时间成功").build();
}
}
... ...
... ... @@ -153,4 +153,8 @@ public class UfoLiveService implements ApplicationContextAware {
UserCameraRecord userCameraRecord = userCameraRecordMapper.selectUserCameraRecord(new UserHelper().getUserId());
return null == userCameraRecord ? null : userCameraRecord.getCameraCode();
}
public Integer queryCurrentTime() {
return DateUtil.getCurrentTimeSeconds();
}
}
... ...
... ... @@ -723,16 +723,41 @@ function addRecordPage(skup, order_code, id) {
return;
}
$('#startTime').val(parseInt(new Date().getTime() / 1000));
timedCount();
$('#recordBtn').linkbutton({text:'结束录制'});
$.ajax({
contentType: "application/json",
dataType: "json",
type: "GET",
url: contextPath + '/live/queryCurrentTime',
success: function (data) {
if (data.code != 200) {
$('#startTime').val(parseInt(new Date().getTime() / 1000));
//$("#startTime").textbox('setValue',parseInt(new Date().getTime() / 1000));
} else if (data.data){
$('#startTime').val(data.data);
}
}
});
} else if ($('#endTime').val() == '') {
$('#endTime').val(parseInt(new Date().getTime() / 1000));
stopCount();
// $("#endTime").textbox('setValue',parseInt(new Date().getTime() / 1000));
$('#recordBtn').linkbutton({text:'上传云端'});
$.ajax({
contentType: "application/json",
dataType: "json",
type: "GET",
url: contextPath + '/live/queryCurrentTime',
success: function (data) {
if (data.code != 200) {
$('#endTime').val(parseInt(new Date().getTime() / 1000));
} else if (data.data){
$('#endTime').val(data.data);
}
}
});
} else if ($('#startTime').val() != '' && $('#endTime').val() != ''){
$('#recordBtn').linkbutton('disable');
$.post(contextPath + "/live/generateMp4", {
... ...
... ... @@ -37,11 +37,10 @@
var totalVar;
function stopCount() {
var endTime = parseInt($('#endTime').val());
var startTime = parseInt($('#startTime').val());
var secondVar = parseInt((endTime - startTime) % 60);
if (endTime - startTime > 60) {
var minuteVar = parseInt((endTime - startTime) / 60);
var totalTime = parseInt($('#txt').val());
var secondVar = parseInt(totalTime % 60);
if (totalTime > 60) {
var minuteVar = parseInt(totalTime / 60);
totalVar = minuteVar + '分' + secondVar + '秒';
} else {
totalVar = secondVar + '秒';
... ...
... ... @@ -128,14 +128,14 @@
<hr>
<table id="operateRecordTable"></table>
</div>
<div title="回访记录" style="overflow:auto;padding:20px;display:none;">
<div title="服务记录" style="overflow:auto;padding:20px;display:none;">
<div class="easyui-layout">
<form id="feedbackRecordSubmitForm" method="post">
<div style="margin-top: 20px;margin-left: 30px;margin-right: 30px">
<table border="0" style="width:99%;">
<tr style="height: 60px">
<td width="100%">
<input class="easyui-textbox" id="feedbackContent" name="feedbackContent" data-options="prompt:'请输入回访内容...'" style="width: 100%;height: 100%;" />
<input class="easyui-textbox" id="feedbackContent" name="feedbackContent" data-options="prompt:'请输入服务记录...'" style="width: 100%;height: 100%;" />
</td>
</tr>
</table>
... ... @@ -201,7 +201,7 @@ $(function() {
getFeedbackRecord(orderCode);
window.self.$.messager.show({
title : "提示",
msg : "提交回访记录成功!"
msg : "提交服务记录成功!"
});
$('#feedbackRecordSubmitForm').form('clear');
}else {
... ... @@ -630,7 +630,7 @@ function getFeedbackRecord(orderCode){
},
columns: [[{
title: "回访内容",
title: "服务记录",
field: "content",
width: 100
}, {
... ... @@ -648,7 +648,7 @@ function getFeedbackRecord(orderCode){
singleSelect: true,
onLoadSuccess: function (data) {
if (data.total == 0) {
$(this).datagrid('appendRow', { type: '<div style="text-align:center;color:red">没有数据!</div>' }).datagrid('mergeCells', { index: 0, field: 'id', colspan: 4 })
$(this).datagrid('appendRow', { type: '<div style="text-align:center;color:red">没有数据!</div>' }).datagrid('mergeCells', { index: 0, field: 'content', colspan: 3 })
}
}
});
... ...