• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Tim Cooke
  • Ron McLeod
  • Jeanne Boyarsky
  • Paul Clapham
Sheriffs:
  • Liutauras Vilda
  • Henry Wong
  • Devaka Cooray
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Al Hobbs
  • Carey Brown
Bartenders:
  • Piet Souris
  • Mikalai Zaikin
  • Himai Minh

JMF with Fobs4JMF: Can't get supported formats for media files

 
Greenhorn
Posts: 18
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I'm using JMF for the first time and am trying to use it with fobs4jmf to try stitching together video files into a single file. Fortunately, I found a sample program to do just that in the SDN website (http://java.sun.com/javase/technologies/desktop/media/jmf/2.1.1/solutions/Concat.html).

I copied and pasted the Concat.java class in a new Eclipse Java class, set up the classpaths, and tested it. (I've gone through the pain of setting up and resetting classpaths so that the JMF diagnostics is able to detect the correct JMF installation in my machine).

However, in the tryMatch method of Concat.java, I am getting an empty array of Format objects, represented by the "supported" variable, in the following code sequence:
=============================================
TrackControl tc = pInfo[0].tracksByType[type][trackID].tc;
Format origFmt = tc.getFormat();
Format newFmt, oldFmt;
Format supported[] = tc.getSupportedFormats();

for (int i = 0; i < supported.length; i++) {

if (supported[i] instanceof AudioFormat) {
// If it's not the original format, then for audio, we'll
// only do linear since it's more accurate to compute the
// audio times.
if (!supported[i].matches(tc.getFormat()) &&
!supported[i].getEncoding().equalsIgnoreCase(AudioFormat.LINEAR))
continue;
}
.........
.........
=============================================


Here's my problem: While on DEBUG mode, I see that the variable "supported" shows an empty array, however, when I look deeper in the TrackControl tc variable and look at its supportedFormats instance variable, I can see that it has a value. For my testing, I used a .mov file and the supportedFormats variable contains an AudioFormat with the value mp4a, 32000.0 Hz, 16-bit, Stereo, BigEndian, Signed, FrameSize=32 bits.

I can't get past through this hurdle for now. Why am I getting an empty array of Format objects when the TrackControl tc variable actually contains value in its supportedFormats property?

I'd appreciate any help on this matter.

Anthony
 
Consider Paul's rocket mass heater.
reply
    Bookmark Topic Watch Topic
  • New Topic