[FFmpeg-devel] [PATCH] GSM-MS decoder and encoder

Michel Bardiaux mbardiaux
Fri Apr 25 12:10:06 CEST 2008


Baptiste Coudurier wrote:
> Hi,
> 
> Michel Bardiaux wrote:
>> Baptiste Coudurier wrote:
>>> Michel Bardiaux wrote:
>>>> Baptiste Coudurier wrote:
>>>>> Hi,
>>>>>
>>>>> Michel Bardiaux wrote:
>>>>>> Baptiste Coudurier wrote:
>>>>>>> Michel Bardiaux wrote:
>>>>>> [time for a big snip]
>>>>>>>> Michael has reported 13200 in aiff, do you also see 13200 for mov? Then 
>>>>>>>> accepting (OK, silently) 0, 13000 and 13200 when decoding solves your 
>>>>>>>> problem while leaving some safety.
>>>>>>> Yes.
>>>>>> OK then, my proposition is that on decoding, all 3 are accepted 
>>>>>> silently, anything else causes a warning (but is accepted); on encoding, 
>>>>>> anything else than 13000 elicits a warning and is forced to 13000.
>>>> Ok with this spec, or is it necessary to tolerate 13200 on encoding too 
>>>> because some muxer sets 13200 before init is called?
>>> Well you can check in the code, that is mov and aiff, I guess.
>> You wrote in another thread (in reply to my proposal to make checks 
>> dependednt on strictness):
>>  > Yes, and now I'd like your check being done when stricness is explicitly
>>  > asked :>
>>  >
>>
>> That modifies things:
>> Default: encoding: silently accepts 13200. I still think a warning for 
>> other values would be good.
>> Strict: encoding: anything else than 13000 and *maybe* 13200 rejected.
>> 	For 13200, I still have to see in mov and aiff.
>> Default: decoding: accepts anything silently.
>> Strict: decoding: reject others than 13000 13200.
>>
>> Greetings,
> 
> Can we please fix this ?
> http://samples.mplayerhq.hu/A-codecs/GSM/sample-gsm-8000.mov
> 
> Choose whichever solution you prefer, but this sample should play
> without error message :>
> 
Here is a 'permissive' first patch; 13000, 13200, and 0, are accepted 
silently.

Note that testing that got me to some other problems:

./ffmpeg_g -i sample-gsm-8000.mov -acodec pcm_s16le sample-gsm-8000.wav 
|& head -30
FFmpeg version SVN-r12949, Copyright (c) 2000-2008 Fabrice Bellard, et al.
   configuration: --enable-libmp3lame --enable-gpl --enable-x11grab 
--enable-libgsm
   libavutil version: 49.6.0
   libavcodec version: 51.56.0
   libavformat version: 52.13.0
   libavdevice version: 52.0.0
   built on Apr 25 2008 11:19:51, gcc: 4.1.2 20061115 (prerelease) 
(Debian 4.1.1-21)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x843b434]edit list not starting at 0, a/v 
desync might occur, patch welcome
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x843b434]Could not find codec parameters 
(Data: rtp  / 0x20707472)
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x843b434]Could not find codec parameters 
(Data: rtp  / 0x20707472)
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'sample-gsm-8000.mov':
   Duration: 00:03:31.30, start: 0.000000, bitrate: 17 kb/s
     Stream #0.0(eng): Audio: libgsm, 8000 Hz, mono
     Stream #0.1(eng): Subtitle: text / 0x74786574
     Stream #0.2(eng): Data: rtp  / 0x20707472
     Stream #0.3(eng): Data: rtp  / 0x20707472
Multiple frames in a packet from stream 0
[Repeated many many times]

This is in ffmpeg.c:output_packet and seems to be due to weird pts'es 
from input, hence a problem in the mov demuxer, but I'm wagging here. 
Anyway, other bug, other thread, no?

-- 
Michel Bardiaux
R&D Director
T +32 [0] 2 790 29 41
F +32 [0] 2 790 29 02
E mailto:mbardiaux at mediaxim.be

Mediaxim NV/SA
Vorstlaan 191 Boulevard du Souverain
Brussel 1160 Bruxelles
http://www.mediaxim.com/
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: gsm.pat
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20080425/91d5d70e/attachment.txt>



More information about the ffmpeg-devel mailing list