[vdr] vdr xine-lib eac3

zaverel at free.fr zaverel at free.fr
Tue Apr 6 15:13:19 CEST 2010


hello,
i do that but no change.
I try another thing:
i convert the sample ts of vdr recording to mkv
and rebuild xine-lib without your patch to test
and it's the same:  stereo is good but 5.0 is bad.

I think xine-lib eac3 only support stereo at this time.

see you.



Selon Jose Alberto Reguero <jareguero at telefonica.net>:

> Yes, the file is ff_audio_decoder.c
> You must put the line
> this->context->request_channels = 2;
> after
> this->context->codec_tag   = _x_stream_info_get(this->stream,
> XINE_STREAM_INFO_AUDIO_FOURCC);
>
> Jose Alberto
>
> El Sábado, 27 de Marzo de 2010, zaverel escribió:
> > Is  ff_audio_decoder.c to patch ?
> > I try but that change nothing.
> >
> > Le 26/03/2010 13:12, Jose Alberto Reguero a écrit :
> > > You can add the line:
> > >
> > > this->context->request_channels = 2;
> > >
> > > in line 247 and 295.
> > >
> > > Then you have stereo sound.
> > >
> > > Joae Alberto
> > >
> > > El Viernes, 26 de Marzo de 2010, zaverel escribió:
> > >> After some test there are some issue:
> > >> ramdom crash at start up or without sound.
> > >> But the real probleme i think is with 5.0 sound.
> > >>
> > >> In the sample the 2.0 audio out is good
> > >> but the 5.0 has low volume and metallic sound
> > >>
> > >> just try xine
> > >> fra piste 5.0
> > >> ffmpeg_audio_dec: unknown header with buf type 0x3000000
> > >>
> > >> qaa 2.0
> > >> is good
> > >>
> > >> ffmpeg -i 00001.ts
> > >> ...
> > >>
> > >> Input #0, mpegts, from '00001.ts':
> > >>   Duration: 00:02:10.51, start: 10461.634989, bitrate: 6905 kb/s
> > >>   Program 132
> > >>
> > >>     Stream #0.0[0x78]: Video: h264, yuv420p, 1440x1080 [PAR 4:3 DAR
> > >>
> > >> 16:9], 50 fps, 50 tbr, 90k tbn, 50 tbc
> > >>
> > >>     Stream #0.1[0x82](fra): Audio: eac3, 48000 Hz, 5.0, s16, 256 kb/s
> > >>     Stream #0.2[0x83](qaa): Audio: eac3, 48000 Hz, stereo, s16, 128 kb/s
> > >>     Stream #0.3[0x8c](fra): Subtitle: dvbsub
> > >>     Stream #0.4[0x8d](fra): Subtitle: dvbsub
> > >>
> > >> Le 25/03/2010 16:08, Jose Alberto Reguero a écrit :
> > >>> Patch for xine-lib that don't need to patch remux.c to work.
> > >>>
> > >>> Jose Alberto
> > >>>
> > >>> El Jueves, 25 de Marzo de 2010, Jose Alberto Reguero escribió:
> > >>>> Patch against latest xine-lib-1.2. New patch for xineliboutput. Now
> > >>>> must work if you patch remux.c.
> > >>>> You must have the latest xine-lib and xineliboutput. Yesterday both
> > >>>> have changes about eac3.
> > >>>>
> > >>>> Jose Alberto
> > >>>>
> > >>>> El Jueves, 25 de Marzo de 2010, zaverel escribió:
> > >>>>> The typo was on remux.c  => lost  : and ;
> > >>>>>
> > >>>>> Anyway xine-lib has been updated and your patch don't apply.
> > >>>>>
> > >>>>> Update is for eac3 with mkv
> > >>>>>
> > >>>>> i don't test it yet
> > >>>>>
> > >>>>>
> > >>>>>
> > >>>>> corrected remux.c
> > >>>>>
> > >>>>> line 533
> > >>>>> case SI::AC3DescriptorTag:
> > >>>>> +case SI::EnhancedAC3DescriptorTag:
> > >>>>>
> > >>>>>
> > >>>>> and in line 191:
> > >>>>>
> > >>>>> -Target[i++] = SI::AC3DescriptorTag;
> > >>>>> +Target[i++] = SI::EnhancedAC3DescriptorTag;
> > >>>>>
> > >>>>> Le 24/03/2010 22:58, Jose Alberto Reguero a écrit :
> > >>>>>> I attached a second version of the first patch.
> > >>>>>> I make the same changes that in the second patch, but maintaining
> > >>>>>> the logic of the first patch. Also I commented the line:
> > >>>>>> +//        this->context->request_channels = 2;
> > >>>>>> because your example has 5 channels. If you have trouble with that
> > >>>>>> you can comment the line again.
> > >>>>>> Which  typo error has the second patch?
> > >>>>>>
> > >>>>>> Jose Alberto
> > >>>>>>
> > >>>>>> El Miércoles, 24 de Marzo de 2010, zaverel escribió:
> > >>>>>>> i 've patched pat.c and now remux.c
> > >>>>>>> and with use xine-lib-1.2 with your second patch (who has typo
> > >>>>>>> error) and that doesn't work.
> > >>>>>>>
> > >>>>>>> corrected remux.c
> > >>>>>>>
> > >>>>>>> line 533
> > >>>>>>> case SI::AC3DescriptorTag:
> > >>>>>>> +case SI::EnhancedAC3DescriptorTag:
> > >>>>>>>
> > >>>>>>>
> > >>>>>>> and in line 191:
> > >>>>>>>
> > >>>>>>> -Target[i++] = SI::AC3DescriptorTag;
> > >>>>>>> +Target[i++] = SI::EnhancedAC3DescriptorTag;
> > >>>>>>>
> > >>>>>>>
> > >>>>>>>
> > >>>>>>> with your previously patch and just pat.c patched with
> > >>>>>>> line 402
> > >>>>>>>
> > >>>>>>> case SI::AC3DescriptorTag:
> > >>>>>>> +case SI:EnhancedAC3DescriptorTag:
> > >>>>>>>
> > >>>>>>> that worked but not stable.
> > >>>>>>>
> > >>>>>>> Is your sample eac3 has |"Spectral extension" ?
> > >>>>>>> because in france dvb-t with eac3 has it
> > >>>>>>> and need a ffmpeg patched for that.
> > >>>>>>> And i test with that sound.
> > >>>>>>>
> > >>>>>>> Le 24/03/2010 19:41, Jose Alberto Reguero a écrit :
> > >>>>>>>> It works here with a old sample of tdt with eac3. Have you patch
> > >>>>>>>> also remux.c? You need to change in line 533:
> > >>>>>>>>
> > >>>>>>>> case SI::AC3DescriptorTag:
> > >>>>>>>> +case SI:EnhancedAC3DescriptorTag:
> > >>>>>>>>
> > >>>>>>>> and in line 191:
> > >>>>>>>>
> > >>>>>>>> -Target[i++] = SI::AC3DescriptorTag;
> > >>>>>>>> +Target[i++] = SI::EnhancedAC3DescriptorTag
> > >>>>>>>>
> > >>>>>>>> Jose Alberto
> > >>>>>>>>
> > >>>>>>>> El Miércoles, 24 de Marzo de 2010, dplu escribió:
> > >>>>>>>>> Hi
> > >>>>>>>>>
> > >>>>>>>>> I have made previous test with the version release by Petri
> > >>>>>>>>> Hintukainen
> > >>>>>>>>>
> > >>>>>>>>> And I notice this part is not working like it should
> > >>>>>>>>>
> > >>>>>>>>> -    if((m->descriptor_tag == STREAM_AUDIO_AC3) ||    /* ac3 -
> > >>>>>>>>> raw */ +    if(m->descriptor_tag == HDMV_AUDIO_84_EAC3) {
> > >>>>>>>>> +      m->content   = p;
> > >>>>>>>>> +      m->size = packet_len;
> > >>>>>>>>> +      m->type |= BUF_AUDIO_EAC3;
> > >>>>>>>>> +      return 1;
> > >>>>>>>>> +
> > >>>>>>>>> +    } else if((m->descriptor_tag == STREAM_AUDIO_AC3) ||    /*
> > >>>>>>>>> ac3 - raw */
> > >>>>>>>>>
> > >>>>>>>>> unfortunaletly, in AC3 or E-AC3 , the descriptor tag is
> > >>>>>>>>> STREAM_AUDIO_AC3, so the program never run the first if
> > >>>>>>>>> (installed a debug printf here)
> > >>>>>>>>>
> > >>>>>>>>> It seems that your first approach (at least what I understood) by
> > >>>>>>>>> forcing the decoding of all AC-3 stream by ffmepg instead of
> > >>>>>>>>> internal lib was nice but generate violent segfault on libavcodec
> > >>>>>>>>>
> > >>>>>>>>> Hope this help you
> > >>>>>>>>>
> > >>>>>>>>> Best regards
> > >>>>>>>>>
> > >>>>>>>>> PS : Sorry to pollute the vdr mailing list (not subscribed to
> > >>>>>>>>> ffmpeg or xine-lib....)
> > >>>>>>>>>
> > >>>>>>>>> Le Wednesday 24 March 2010 18:41:14 zaverel, vous avez écrit :
> > >>>>>>>>>> hello
> > >>>>>>>>>>
> > >>>>>>>>>>  your second patch doesn't work  : no sound on eac3 channel
> > >>>>>>>>>>
> > >>>>>>>>>> if you want there is a sample of vdr hd-eac3 recording here:
> > >>>>>>>>>>
> > >>>>>>>>>> http://dl.free.fr/ew4rJddM8
> > >>>>>>>>>>
> > >>>>>>>>>>  103mo
> > >>>>>>>>>>
> > >>>>>>>>>> else , i don't know what mailing-list is the more indicate for
> > >>>>>>>>>> debuging
> > >>>>>>>>>>
> > >>>>>>>>>> the vdr or xine-dev mailing-list ?
> > >>>>>>>>>>
> > >>>>>>>>>> _______________________________________________
> > >>>>>>>>>> vdr mailing list
> > >>>>>>>>>> vdr at linuxtv.org
> > >>>>>>>>>> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
> > >>>>>>>>>
> > >>>>>>>>> _______________________________________________
> > >>>>>>>>> vdr mailing list
> > >>>>>>>>> vdr at linuxtv.org
> > >>>>>>>>> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
> > >>>>>>>>
> > >>>>>>>> _______________________________________________
> > >>>>>>>> vdr mailing list
> > >>>>>>>> vdr at linuxtv.org
> > >>>>>>>> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
> > >>>>>>
> > >>>>>> _______________________________________________
> > >>>>>> vdr mailing list
> > >>>>>> vdr at linuxtv.org
> > >>>>>> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
> > >>>
> > >>> _______________________________________________
> > >>> vdr mailing list
> > >>> vdr at linuxtv.org
> > >>> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
> > >
> > > _______________________________________________
> > > vdr mailing list
> > > vdr at linuxtv.org
> > > http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
> >
> > _______________________________________________
> > vdr mailing list
> > vdr at linuxtv.org
> > http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>
>
> _______________________________________________
> vdr mailing list
> vdr at linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/vdr
>





More information about the vdr mailing list