Search

HTML5 video in Scala or Java with Xuggle

Introduction

If you are looking for information to use free libraries to convert and resize video files within a Scala or Java project, you may probably have cross the road of an open source project called Xuggle .
This library is written in Java but is using native code from ffmpeg (another open source project) for the many video and audio codecs.

    This tutorial will guide you to:

  • build the Xuggle project on Debian Linux
  • write a sample class in Java and Scala to use Xuggle
  • resize a video and resample its audio
  • convert common video/audio formats to HTML5 video

Read more

Apache Wicket – WebSocket Support

With Apache Wicket there exists a component based Web Framework which supports the new WebSocket protocol.
I want to give you a short introduction to Apache Wicket with the focus on the new WebSocket Support. It will be explained by developing a little real-time chat application in 7 steps.

As I mentioned in my previous article WebSocket versus Comet, there are good reasons using the new WebSocket protocol.
There are some Web Frameworks supporting this new protocol in their technology stack.

Read more

The Command and Query Responsibility Segregation (CQRS) Design Pattern

Introduction

The ‘Command and Query Responsibility Segregation’ (CQRS) design pattern is based on the “Command-Query Separation” (CQS) principle from the book “Object-Oriented Software Construction“ by Bertrand Meyer (1988) and was first mentioned by Greg Young and Udi Dahan in 2010.

This pattern has produced a lot of excitement and hype but the principle behind it is very simple.

As the demands on command methods (any method with write access that mutates state) are usually very different to those on query methods (any method with read access that returns a value), it makes sense to separate these two groups. This would naturally mean different services but might also mean different models.

Read more

WebSocket versus Comet – Real-Time Web Applications

Introduction

Many web application developers have tried to develop a high performance web application with real-time behaviors. A common example of such an application could be a communication web platform like a chat application. A message sent by a user should be transmitted in real-time to other users.

Years ago I tried to develop a chat web application but until now it has not been so easy to achieve. I would like to show you how easily and clearly it can be implemented today.
There will be a comparison of the different approaches to develop a real-time web application which will show that it has never been easier to achieve it before.

The approaches I want to compare are the “new” WebSocket technology and the “old” Comet approach. First you will see how difficult it was and how easy it is today to write a small communication platform. You will also get the easy and clear source code of the communication platform through the WebSocket technology. This article does not cover a complete WebSocket description but a short insight of the WebSocket technology advantages and a practical usage.

Read more