pdherbemont / Glasses

This is the next generation of VLC for Mac also called Lunettes.
http://wiki.github.com/pdherbemont/Glasses
206 stars 25 forks source link

Save as iPod Movie doesn't work. #3

Open pdherbemont opened 14 years ago

pdherbemont commented 14 years ago

It creates a movie that can't be read by QuickTime.

I have no idea if VLC can properly transcode it to mp4, and what are the corresponding command line.

We'll ditch the menu if we can't get it to work.

fkuehne commented 14 years ago

I'm having a look at this right now. For me, it doesn't work at all and results in nice libvlc crashes because we give it an empty VLCMedia.

I'll provide some fix for this later tonight and will have a look at the command line. VLC is definitely able to create quicktime-compliant mp4 files.

fkuehne commented 14 years ago

Okay, it probably doesn't work for you right now because the current contribs don't include a usable mp4a encoder (aka faad) due to licensing issues.

Exporting to MPEG2 works correctly (mostly, note that only few framerates are supported here), but libvlc fails to report EOF of the input correctly. Therefore, the progressbar stalls at about 33 %. Canceling the dialog will finish the file.

pdherbemont commented 14 years ago

Hmm. So far, we need to open a ticket to track the issue you are talking about in libvlc.

Also, does this mean that we can't properly export to mp4? I think that's what we want to be able to export to, and not mpeg2...

fkuehne commented 14 years ago

Yes, that's correct. VLC 1.0 and later no longer include a working mp4a encoder and therefore fail to output correct MP4 files. I met one of the FFmpeg developers at LinuxTag this June and he told me that some folks are working on a licensing compliant encoder, but I don't really know how far they got. Reportedly, it is a lot slower and doesn't include all profiles (yet?).

Exporting to MPEG2 is definitely unimportant for most users and should be removed again later on.

The EOF thing is definitely a libvlc issue. This also explains why [VLCStreamSession.isComplete] never turns true.

pdherbemont commented 14 years ago

ok :( I'll have a look at the libvlc side.

fkuehne commented 14 years ago

Hum, according to Mans from FFmpeg, their native AAC encoder is not under active development anymore. At present, it is not useable, as modern PCs are unable to encode stuff in real time with it. There are plans to audit the faac encoder though and to revive it in a fully LGPL compatible way.

For the meantime, I'll have a look at the Handbrake project. Their latest release includes a QuickTime based encoder (which they call "CoreAudio"-based). Perhaps, it can be used here, too?

pdherbemont commented 14 years ago

Good idea. That said, we are GPL, do we care about including GPL code? (ffac is GPL, I think that's the issue with ffmpeg). We could ask for legal hint there.

pdherbemont commented 14 years ago

Any update on this? Are we dropping the feature?

fkuehne commented 14 years ago

Hmm, I've got a non-working draft of a CoreAudio-based encoder module for VLC. It's unfinished work, but I could share it if you're interested. That would probably the best way to go, as it would add all available (audio) encoders to VLC. However, I've got absolutely no time to work on it right now, which is a pity. Dropping the feature wouldn't be great IMO, as from a user's perspective, I'd expect it to be there.

gmthor commented 14 years ago

Just curious. Since Lunette is Mac OS X only, wouldn't it make sense to use CoreAudio for encoding/decoding AAC? I remember that there was an XCode example ( name: afconvert ) that could encode AAC with CoreAudio. Or do you plan to keep stuff like that in the VLCKit framework?

pdherbemont commented 14 years ago

It would make sense to use CoreAudio and QTKit where appropriate. But we don't have a lot of choice, we need to have it as a VLC module.