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


Reply via email to