BtbN / vlc-htsp-plugin

Plugin for VLC to access TVHeadend via HTSP.
GNU Lesser General Public License v2.1
58 stars 32 forks source link

No audio (aac latm) #3

Closed dhead666 closed 9 years ago

dhead666 commented 11 years ago

No audio in vlc with vlc-htpc-plugin.

Audio is recognized on xbmc, tvhguide (played in mxplayer). When directly openning the network stream audio is recoginzed but I do get the following error messege which I believe is because of the the subtitles.

On vlc codec information tag: Stream 0: Video, h264. Streams 1+2: Audio, AAC LATM. Streams 3-5: Subtitles ("codec": undf)

No suitable decoder module: VLC does not support the audio or video format "undf". Unfortunately there is no >way for you to fix this.

Tested on linux x86-64, vlc 2.0.6, tvheadend from master git branch last commit from 13.04.2013

BtbN commented 11 years ago

I have no channel which has AACLATM to test this, but from what i see, AACLATM is handled by the same decoder as normal AAC, and tvh doesn't even have a special type it sends for it. VLC headers also look like AACLATM is just an alias for regular AAC. So it should just work. What type does tvh return in the streams type field?

dhead666 commented 11 years ago

Tvheadend shows it as AAC. Anyway I've dumped the whole ts (90MB) so you could have a look. https://dl.dropboxusercontent.com/u/6902100/XBMC/test.ts

dhead666 commented 11 years ago

Issue still exist in updated vlc-htsp-plugin build (latest commit) and updated tvheadend build (latest commit before the transcoding commit, 84c1c05d73232d4d0e34bbd587892bb019f0abb5) on vlc 2.0.7.

BtbN commented 11 years ago

There is nothing i could do about it. All formats tvh can report are correctly mapped to their VLC version.

dhead666 commented 11 years ago

Anything I can do to help debug this ? Maybe running the plugin or vlc in some debug mode with extensive logging ?

Have you tried loop streaming my test.ts file (with vlc or maybe with tsplay from the tstools project) and feed it to tvheadend ?

BtbN commented 11 years ago

Not realy. The AAC stream has some extensions (SBR), which tvh doesn't know about, and doesn't report about. All i get from tvh is "That's AAC", and i tell vlc the same. If it's not AAC, i can't do anything about that.

dhead666 commented 11 years ago

So maybe the best approach is to wait for the transcoding feature and get a proper audio stream.

BtbN commented 11 years ago

TVH should report the diffrent format.

bshtein commented 11 years ago

Hi. Is there any changes on this issue?

I am having the same problem as dhead666.

When playing using htsp:// the audio is not played and counter shows zero decoded audio packets. However when I access http:// stream directly, everything is plays just fine.

BtbN commented 11 years ago

I still can't do anything about this without breaking playback of all other AAC formats. It's a protocol limitation currently.

bshtein commented 11 years ago

Can you point me to a specific code line that has to be modified and a suggestion on how to modify it, so I can build my own version of the plugin? I don't really care about all other AAC formats

linuxstb commented 10 years ago

Is anyone able to upload another sample? The dropbox link above doesn't work any more.

dhead666 commented 10 years ago

Oh, sorry I cleaned a little my Dropbox, here's the original multicast ts. https://dl.dropboxusercontent.com/u/6902100/VideoTests/test.ts

Here's an mkv recorded by TVH of the same dvb-t service https://dl.dropboxusercontent.com/u/6902100/VideoTests/Ch%202-3.mkv

c0mm0n commented 10 years ago

Having exactly the same issue, any tips ?

Tested with tvh 3.5 and 3.9 no chance. Audio stream is reported as aac by vlc, but I doubt that's the good format. HTTP streaming report it as MPEG.

No problem using XBMC tvh client, sounds works. Direct http url also works in VLC.

fape commented 9 years ago

I got the same (vlc 2.1.5, tvheadend. 3.9.2144~gda3d9ec) Directly open from "Broadcast details" everything works fine, but when I open from vlc playlist there is no sound. May be this can help: http://i.imgur.com/6VW3hf9.png

What am I miss?

fape commented 9 years ago

I did some research. I think there is some "magic" if the audio stream is mpeg2. I mean "automatic codec information detection/correction" Because when I comment out these 2 line https://github.com/BtbN/vlc-htsp-plugin/blob/master/access.cpp#L789, the mpeg2 stream is still working. The map->getU32("channels") returns 2 for both stream (mpeg2 and aac). I find some #define s about channels in vlc_es.h (#define AOUTCHAN*) AND the map->getU32("rate") always return below 10 (tipicaly 3 or 6) not 48000 as the codec info shows. I think something mapping is missing. Where can I find some information how to map channels and rate infos?

dhead666 commented 9 years ago

After this commit audio track is audible of most channels (I don't have much) but it's not continuous completely, I can notice blips of silents (not sure what to call it).

BtbN commented 9 years ago

There is absolutely nothing i could do about that, i just pass the raw data to VLC without touching it.

dhead666 commented 9 years ago

@BtbN

Let me know if you need more samples and you can actually also use the stream link of WRKZ radio station to encounter the current issue of audio gliches with aac.

pipe:///usr/bin/ffmpeg -loglevel fatal -i http://icy3.abacast.com/nabco-wrkzfmaac-48 -vn -acodec copy -metadata service_provider=IPTV -metadata service_name=BLITZ -f mpegts pipe:1
dhead666 commented 9 years ago

The original issue has been fixed with latest commits. There's another issue with buffer underruns (the audio gliches/hiccups) which @BtbN is aware of and hopefully will be fixed soon.