Author: solomax
Date: Fri Aug 12 03:35:19 2016
New Revision: 1756075
URL: http://svn.apache.org/viewvc?rev=1756075&view=rev
Log:
[OPENMEETINGS-652] wb video being converted to mp4
Modified:
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/GenerateImage.java
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/whiteboardVideoPlayer.lzx
openmeetings/application/branches/3.1.x/openmeetings-server/src/site/xdoc/BuildInstructions.xml
openmeetings/application/branches/3.1.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OmFileHelper.java
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/Mp4RecordingResourceReference.java
Modified:
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java?rev=1756075&r1=1756074&r2=1756075&view=diff
==============================================================================
---
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
(original)
+++
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/FlvExplorerConverter.java
Fri Aug 12 03:35:19 2016
@@ -18,7 +18,9 @@
*/
package org.apache.openmeetings.core.converter;
-import static org.apache.openmeetings.util.OmFileHelper.FLV_EXTENSION;
+import static org.apache.openmeetings.util.OmFileHelper.MP4_EXTENSION;
+import static org.apache.openmeetings.util.OmFileHelper.JPG_EXTENSION;
+import static org.apache.openmeetings.util.OmFileHelper.WB_VIDEO_FILE_PREFIX;
import static org.apache.openmeetings.util.OmFileHelper.getStreamsHibernateDir;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
@@ -40,6 +42,7 @@ import org.springframework.beans.factory
public class FlvExplorerConverter extends BaseConverter {
private static final Logger log =
Red5LoggerFactory.getLogger(FlvExplorerConverter.class, webAppRootKey);
+ private static final Pattern p = Pattern.compile("\\d{2,4}(x)\\d{2,4}");
// Spring loaded Beans
@Autowired
@@ -77,16 +80,13 @@ public class FlvExplorerConverter extend
private List<ConverterProcessResult> convertToFLV(FileExplorerItem
fileExplorerItem, String moviePath) {
List<ConverterProcessResult> returnLog = new
ArrayList<ConverterProcessResult>();
try {
- String name = "UPLOADFLV_" + fileExplorerItem.getId();
- File outputFullFlv = new File(getStreamsHibernateDir(),
name + FLV_EXTENSION);
+ String name = WB_VIDEO_FILE_PREFIX +
fileExplorerItem.getId();
+ File outputFullFlv = new File(getStreamsHibernateDir(),
name + MP4_EXTENSION);
fileExplorerItem.setType(Type.Video);
String[] argv_fullFLV = new String[] {
getPathToFFMPEG(), "-y", "-i", moviePath,
- "-ar", "22050", "-acodec",
"libmp3lame", "-ab", "32k",
- "-vcodec", "flv",
- outputFullFlv.getCanonicalPath() };
- // "-s", flvWidth + "x" + flvHeight,
+ "-codec:a", "mp3", "-codec:v", "mpeg4",
outputFullFlv.getCanonicalPath() };
ConverterProcessResult returnMapConvertFLV =
ProcessHelper.executeScript("uploadFLV ID :: "
+ fileExplorerItem.getId(),
argv_fullFLV);
@@ -102,13 +102,13 @@ public class FlvExplorerConverter extend
returnLog.add(returnMapConvertFLV);
- String hashFileFullNameJPEG = "UPLOADFLV_" +
fileExplorerItem.getId() + ".jpg";
- File outPutJpeg = new File(getStreamsHibernateDir(),
name + ".jpg");
+ String hashFileFullNameJPEG = WB_VIDEO_FILE_PREFIX +
fileExplorerItem.getId() + JPG_EXTENSION;
+ File outPutJpeg = new File(getStreamsHibernateDir(),
name + JPG_EXTENSION);
fileExplorerItem.setPreviewImage(hashFileFullNameJPEG);
String[] argv_previewFLV = new String[] {
getPathToFFMPEG(), "-y", "-i",
- outputFullFlv.getCanonicalPath(),
"-vcodec", "mjpeg", "-vframes", "1", "-an",
+ outputFullFlv.getCanonicalPath(),
"-codec:v", "mjpeg", "-vframes", "1", "-an",
"-f", "rawvideo", "-s", flvWidth + "x"
+ flvHeight,
outPutJpeg.getCanonicalPath() };
@@ -128,18 +128,14 @@ public class FlvExplorerConverter extend
}
private static FlvDimension getFlvDimension(String txt) throws
Exception {
- Pattern p = Pattern.compile("\\d{2,4}(x)\\d{2,4}");
-
Matcher matcher = p.matcher(txt);
while (matcher.find()) {
String foundResolution = txt.substring(matcher.start(),
matcher.end());
-
String[] resultions = foundResolution.split("x");
-
return new
FlvDimension(Integer.valueOf(resultions[0]).intValue(),
Integer.valueOf(resultions[1]).intValue());
}
- throw new Exception("Failed to get FLV dimension: " + txt);
+ return new FlvDimension(100, 100); // will return 100x100 for
non-video to be able to play
}
}
Modified:
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/GenerateImage.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/GenerateImage.java?rev=1756075&r1=1756074&r2=1756075&view=diff
==============================================================================
---
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/GenerateImage.java
(original)
+++
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/converter/GenerateImage.java
Fri Aug 12 03:35:19 2016
@@ -21,7 +21,7 @@ package org.apache.openmeetings.core.con
import static org.apache.openmeetings.util.OmFileHelper.bigImagePrefix;
import static org.apache.openmeetings.util.OmFileHelper.chatImagePrefix;
import static
org.apache.openmeetings.util.OmFileHelper.getUploadProfilesUserDir;
-import static org.apache.openmeetings.util.OmFileHelper.JPG_EXTENTION;
+import static org.apache.openmeetings.util.OmFileHelper.JPG_EXTENSION;
import static org.apache.openmeetings.util.OmFileHelper.profileFileName;
import static org.apache.openmeetings.util.OmFileHelper.profileImagePrefix;
import static org.apache.openmeetings.util.OmFileHelper.thumbImagePrefix;
@@ -78,7 +78,7 @@ public class GenerateImage extends BaseC
File[] files = getUploadProfilesUserDir(userId).listFiles(new
FileFilter() {
@Override
public boolean accept(File pathname) {
- return
pathname.getName().endsWith(JPG_EXTENTION);
+ return
pathname.getName().endsWith(JPG_EXTENSION);
}
});
if (files != null) {
@@ -87,7 +87,7 @@ public class GenerateImage extends BaseC
}
}
- File destinationFile =
OmFileHelper.getNewFile(getUploadProfilesUserDir(userId), profileFileName,
JPG_EXTENTION);
+ File destinationFile =
OmFileHelper.getNewFile(getUploadProfilesUserDir(userId), profileFileName,
JPG_EXTENSION);
if (!skipConvertion) {
returnMap.addItem("processJPG",
convertSingleJpg(file.getCanonicalPath(), destinationFile));
} else {
Modified:
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java?rev=1756075&r1=1756074&r2=1756075&view=diff
==============================================================================
---
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
(original)
+++
openmeetings/application/branches/3.1.x/openmeetings-core/src/main/java/org/apache/openmeetings/core/remote/ConferenceLibrary.java
Fri Aug 12 03:35:19 2016
@@ -18,7 +18,8 @@
*/
package org.apache.openmeetings.core.remote;
-import static org.apache.openmeetings.util.OmFileHelper.FLV_EXTENSION;
+import static org.apache.openmeetings.util.OmFileHelper.MP4_EXTENSION;
+import static org.apache.openmeetings.util.OmFileHelper.WB_VIDEO_FILE_PREFIX;
import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
import java.io.File;
@@ -64,7 +65,7 @@ public class ConferenceLibrary implement
@Autowired
private ISessionManager sessionManager;
@Autowired
- private SessiondataDao sessiondataDao;
+ private SessiondataDao sessionDao;
@Autowired
private UserDao userDao;
@Autowired
@@ -76,7 +77,7 @@ public class ConferenceLibrary implement
public LibraryPresentation getPresentationPreviewFileExplorer(String
SID, String parentFolder) {
try {
- Long users_id = sessiondataDao.check(SID);
+ Long users_id = sessionDao.check(SID);
log.debug("#############users_id : " + users_id);
@@ -111,7 +112,7 @@ public class ConferenceLibrary implement
*/
public Long saveAsObject(String SID, Long room_id, String fileName,
Object tObjectRef) {
try {
- Long users_id = sessiondataDao.check(SID);
+ Long users_id = sessionDao.check(SID);
if
(AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
// LinkedHashMap tObject = (LinkedHashMap)t;
// ArrayList tObject = (ArrayList)t;
@@ -156,7 +157,7 @@ public class ConferenceLibrary implement
@SuppressWarnings({ "rawtypes", "unchecked" })
public void loadWmlObject(String SID, Long room_id, Long fileId, Long
whiteboardId) {
try {
- Long users_id = sessiondataDao.check(SID);
+ Long users_id = sessionDao.check(SID);
if
(AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
IConnection current = Red5.getConnectionLocal();
@@ -225,7 +226,7 @@ public class ConferenceLibrary implement
@SuppressWarnings("rawtypes")
public ArrayList loadChartObject(String SID, Long room_id, String
fileName) {
try {
- Long users_id = sessiondataDao.check(SID);
+ Long users_id = sessionDao.check(SID);
if
(AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
return
LibraryChartLoader.getInstance().loadChart(OmFileHelper.getUploadRoomDir(room_id.toString()),
fileName);
}
@@ -237,12 +238,12 @@ public class ConferenceLibrary implement
/**
* @param SID
- * @param flvFileExplorerId
+ * @param fileId
* @return 1 in case of success, -1 otherwise
*/
- public Long copyFileToCurrentRoom(String SID, Long flvFileExplorerId) {
+ public Long copyFileToCurrentRoom(String SID, Long fileId) {
try {
- Long users_id = sessiondataDao.check(SID);
+ Long users_id = sessionDao.check(SID);
if
(AuthLevelUtil.hasUserLevel(userDao.getRights(users_id))) {
@@ -251,14 +252,14 @@ public class ConferenceLibrary implement
Client currentClient =
sessionManager.getClientByStreamId(streamid, null);
- Long room_id = currentClient.getRoomId();
+ Long roomId = currentClient.getRoomId();
- if (room_id != null) {
- File outputFullFlvFile = new
File(OmFileHelper.getStreamsHibernateDir(), "UPLOADFLV_" + flvFileExplorerId +
FLV_EXTENSION);
+ if (roomId != null) {
+ File outputFullFlvFile = new
File(OmFileHelper.getStreamsHibernateDir(), WB_VIDEO_FILE_PREFIX + fileId +
MP4_EXTENSION);
- File targetFolder =
OmFileHelper.getStreamsSubDir(room_id);
+ File targetFolder =
OmFileHelper.getStreamsSubDir(roomId);
- File targetFullFlvFile = new
File(targetFolder, "UPLOADFLV_" + flvFileExplorerId + FLV_EXTENSION);
+ File targetFullFlvFile = new
File(targetFolder, WB_VIDEO_FILE_PREFIX + fileId + MP4_EXTENSION);
if (outputFullFlvFile.exists() &&
!targetFullFlvFile.exists()) {
FileHelper.copy(outputFullFlvFile, targetFullFlvFile);
}
Modified:
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/whiteboardVideoPlayer.lzx
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/whiteboardVideoPlayer.lzx?rev=1756075&r1=1756074&r2=1756075&view=diff
==============================================================================
---
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/whiteboardVideoPlayer.lzx
(original)
+++
openmeetings/application/branches/3.1.x/openmeetings-flash/src/main/swf/modules/conference/whiteboard/base/whiteboardVideoPlayer.lzx
Fri Aug 12 03:35:19 2016
@@ -37,7 +37,7 @@
<handler name="oninit">
if ($debug) Debug.write("whiteboardVideoPlayer ::
",this.fileId);
- this.recordingName = "UPLOADFLV_" + this.fileId + ".flv";
+ this.recordingName = "UPLOADFLV_" + this.fileId + ".mp4";
calcVideoWidthHeight();
this.copyFileToCurrentRoom.doCall();
</handler>
Modified:
openmeetings/application/branches/3.1.x/openmeetings-server/src/site/xdoc/BuildInstructions.xml
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-server/src/site/xdoc/BuildInstructions.xml?rev=1756075&r1=1756074&r2=1756075&view=diff
==============================================================================
---
openmeetings/application/branches/3.1.x/openmeetings-server/src/site/xdoc/BuildInstructions.xml
(original)
+++
openmeetings/application/branches/3.1.x/openmeetings-server/src/site/xdoc/BuildInstructions.xml
Fri Aug 12 03:35:19 2016
@@ -65,25 +65,25 @@
<p>To compile only client you can run following
command: </p>
<source>
<![CDATA[
-mvn package -pl openmeetings-flash # compiles a complete package
into the folder openmeetings-flash/target
+mvn install -pl openmeetings-flash # compiles a complete package
into the folder openmeetings-flash/target
]]>
</source>
<p>In case you would like to develop Openmeetings you
need to run <i>"unpacked"</i> build: </p>
<source>
<![CDATA[
-mvn clean package -Dunpacked=true -DskipTests=true
-Dold-backups.dwnd.skip=true -Ddb=mysql -Dwicket.mode=DEVELOPMENT
+mvn clean install -Dunpacked=true -DskipTests=true
-Dold-backups.dwnd.skip=true -Ddb=mysql -Dwicket.mode=DEVELOPMENT
]]>
</source>
<p>After modifications are made you can run
<i>"quick"</i> build: </p>
<source>
<![CDATA[
-mvn package -pl openmeetings-web -pl openmeetings-server -Dquick=true
-Ddb=mysql -Dwicket.mode=DEVELOPMENT
+mvn install -pl openmeetings-web -pl openmeetings-server -Dquick=true
-Ddb=mysql -Dwicket.mode=DEVELOPMENT
]]>
</source>
<p>Any number of projects can be specified during
build: </p>
<source>
<![CDATA[
-mvn package -pl openmeetings-util -pl openmeetings-db -pl openmeetings-core
-pl openmeetings-install -pl openmeetings-service -pl openmeetings-web -pl
openmeetings-server -pl openmeetings-webservice -Dquick=true -Ddb=mysql
-Dwicket.mode=DEVELOPMENT
+mvn install -pl openmeetings-util -pl openmeetings-db -pl openmeetings-core
-pl openmeetings-install -pl openmeetings-service -pl openmeetings-web -pl
openmeetings-server -pl openmeetings-webservice -Dquick=true -Ddb=mysql
-Dwicket.mode=DEVELOPMENT
]]>
</source>
<p>
Modified:
openmeetings/application/branches/3.1.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OmFileHelper.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OmFileHelper.java?rev=1756075&r1=1756074&r2=1756075&view=diff
==============================================================================
---
openmeetings/application/branches/3.1.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OmFileHelper.java
(original)
+++
openmeetings/application/branches/3.1.x/openmeetings-util/src/main/java/org/apache/openmeetings/util/OmFileHelper.java
Fri Aug 12 03:35:19 2016
@@ -73,10 +73,22 @@ public class OmFileHelper {
public static final String bigImagePrefix = "_big_";
public static final String thumbImagePrefix = "_thumb_";
public static final String dashboardFile = "dashboard.xml";
- public static final String FLV_EXTENSION = ".flv";
- public static final String MP4_EXTENSION = ".mp4";
- public static final String OGG_EXTENSION = ".ogg";
- public static final String JPG_EXTENTION = ".jpg";
+ public static final String EXTENSION_WML = "wml";
+ public static final String EXTENSION_FLV = "flv";
+ public static final String EXTENSION_MP4 = "mp4";
+ public static final String EXTENSION_AVI = "avi";
+ public static final String EXTENSION_OGG = "ogg";
+ public static final String EXTENSION_JPG = "jpg";
+ public static final String EXTENSION_SWF = "swf";
+ public static final String WML_EXTENSION = "." + EXTENSION_WML;
+ public static final String FLV_EXTENSION = "." + EXTENSION_FLV;
+ public static final String MP4_EXTENSION = "." + EXTENSION_MP4;
+ public static final String OGG_EXTENSION = "." + EXTENSION_OGG;
+ public static final String JPG_EXTENSION = "." + EXTENSION_JPG;
+ public static final String WB_VIDEO_FILE_PREFIX = "UPLOADFLV_";
+ public static final String FLV_MIME_TYPE = "video/" + EXTENSION_FLV;
+ public static final String MP4_MIME_TYPE = "video/" + EXTENSION_MP4;
+ public static final String JPG_MIME_TYPE = "image/jpeg";
public static void setOmHome(File omHome) {
OmFileHelper.OM_HOME = omHome;
Modified:
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java?rev=1756075&r1=1756074&r2=1756075&view=diff
==============================================================================
---
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
(original)
+++
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/user/record/VideoPlayer.java
Fri Aug 12 03:35:19 2016
@@ -19,6 +19,7 @@
package org.apache.openmeetings.web.user.record;
import static org.apache.openmeetings.util.OmFileHelper.getMp4Recording;
+import static org.apache.openmeetings.util.OmFileHelper.MP4_MIME_TYPE;
import org.apache.openmeetings.db.entity.record.Recording;
import org.apache.openmeetings.web.util.Mp4RecordingResourceReference;
@@ -51,7 +52,7 @@ public class VideoPlayer extends Panel {
super(id);
add(container.setOutputMarkupPlaceholderTag(true));
mp4.setDisplayType(true);
- mp4.setType("video/mp4");
+ mp4.setType(MP4_MIME_TYPE);
ogg.setDisplayType(true);
ogg.setType("video/ogg");
player.add(mp4, ogg);
Modified:
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/Mp4RecordingResourceReference.java
URL:
http://svn.apache.org/viewvc/openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/Mp4RecordingResourceReference.java?rev=1756075&r1=1756074&r2=1756075&view=diff
==============================================================================
---
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/Mp4RecordingResourceReference.java
(original)
+++
openmeetings/application/branches/3.1.x/openmeetings-web/src/main/java/org/apache/openmeetings/web/util/Mp4RecordingResourceReference.java
Fri Aug 12 03:35:19 2016
@@ -19,6 +19,7 @@
package org.apache.openmeetings.web.util;
import static org.apache.openmeetings.util.OmFileHelper.MP4_EXTENSION;
+import static org.apache.openmeetings.util.OmFileHelper.MP4_MIME_TYPE;
import static org.apache.openmeetings.util.OmFileHelper.getMp4Recording;
import java.io.File;
@@ -34,7 +35,7 @@ public class Mp4RecordingResourceReferen
@Override
public String getMimeType() {
- return "video/mp4";
+ return MP4_MIME_TYPE;
}
@Override