420 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			420 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			Plaintext
		
	
	
		
			Executable File
		
	
	
	
	
| Testing default values
 | |
| num=0
 | |
| toggle=1
 | |
| string=default
 | |
| escape=\=,
 | |
| flags=1
 | |
| rational=1/1
 | |
| video_rate=25/1
 | |
| width=200 height=300
 | |
| pix_fmt=0bgr
 | |
| sample_fmt=s16
 | |
| duration=1000
 | |
| color=255 192 203 255
 | |
| channel_layout=311=311
 | |
| binary=62 69 6e 0
 | |
| binary_size=4
 | |
| num64=1
 | |
| flt=0.333333
 | |
| dbl=0.333333
 | |
| TestContext AVOptions:
 | |
|   -num               <int>        E......... set num (from 0 to 100) (default 0)
 | |
|   -toggle            <int>        E......... set toggle (from 0 to 1) (default 1)
 | |
|   -rational          <rational>   E......... set rational (from 0 to 10) (default 1/1)
 | |
|   -string            <string>     E......... set string (default "default")
 | |
|   -escape            <string>     E......... set escape str (default "\=,")
 | |
|   -flags             <flags>      E......... set flags (default cool)
 | |
|      cool                         E......... set cool flag
 | |
|      lame                         E......... set lame flag
 | |
|      mu                           E......... set mu flag
 | |
|   -size              <image_size> E......... set size (default "200x300")
 | |
|   -pix_fmt           <pix_fmt>    E......... set pixfmt (default 0bgr)
 | |
|   -sample_fmt        <sample_fmt> E......... set samplefmt (default s16)
 | |
|   -video_rate        <video_rate> E......... set videorate (default "25")
 | |
|   -duration          <duration>   E......... set duration (default 0.001)
 | |
|   -color             <color>      E......... set color (default "pink")
 | |
|   -cl                <channel_layout> E......... set channel layout (default 0x137)
 | |
|   -bin               <binary>     E......... set binary value
 | |
|   -bin1              <binary>     E......... set binary value
 | |
|   -bin2              <binary>     E......... set binary value
 | |
|   -num64             <int64>      E......... set num 64bit (from 0 to 100) (default 1)
 | |
|   -flt               <float>      E......... set float (from 0 to 100) (default 0.333333)
 | |
|   -dbl               <double>     E......... set double (from 0 to 100) (default 0.333333)
 | |
|   -bool1             <boolean>    E......... set boolean value (default auto)
 | |
|   -bool2             <boolean>    E......... set boolean value (default true)
 | |
|   -bool3             <boolean>    E......... set boolean value (default false)
 | |
|   -dict1             <dictionary> E......... set dictionary value
 | |
|   -dict2             <dictionary> E......... set dictionary value (default "happy=':-)'")
 | |
| 
 | |
| Testing av_opt_is_set_to_default()
 | |
| name:       num default:1 error:
 | |
| name:    toggle default:0 error:
 | |
| name:  rational default:0 error:
 | |
| name:    string default:0 error:
 | |
| name:    escape default:0 error:
 | |
| name:     flags default:0 error:
 | |
| name:      cool default:1 error:Option not found
 | |
| name:      lame default:1 error:Option not found
 | |
| name:        mu default:1 error:Option not found
 | |
| name:      size default:0 error:
 | |
| name:   pix_fmt default:0 error:
 | |
| name:sample_fmt default:0 error:
 | |
| name:video_rate default:0 error:
 | |
| name:  duration default:0 error:
 | |
| name:     color default:0 error:
 | |
| name:        cl default:0 error:
 | |
| name:       bin default:0 error:
 | |
| name:      bin1 default:1 error:
 | |
| name:      bin2 default:1 error:
 | |
| name:     num64 default:0 error:
 | |
| name:       flt default:0 error:
 | |
| name:       dbl default:0 error:
 | |
| name:     bool1 default:0 error:
 | |
| name:     bool2 default:0 error:
 | |
| name:     bool3 default:1 error:
 | |
| name:     dict1 default:1 error:
 | |
| name:     dict2 default:0 error:
 | |
| name:       num default:1 error:
 | |
| name:    toggle default:1 error:
 | |
| name:  rational default:1 error:
 | |
| name:    string default:1 error:
 | |
| name:    escape default:1 error:
 | |
| name:     flags default:1 error:
 | |
| name:      cool default:1 error:Option not found
 | |
| name:      lame default:1 error:Option not found
 | |
| name:        mu default:1 error:Option not found
 | |
| name:      size default:1 error:
 | |
| name:   pix_fmt default:1 error:
 | |
| name:sample_fmt default:1 error:
 | |
| name:video_rate default:1 error:
 | |
| name:  duration default:1 error:
 | |
| name:     color default:1 error:
 | |
| name:        cl default:1 error:
 | |
| name:       bin default:1 error:
 | |
| name:      bin1 default:1 error:
 | |
| name:      bin2 default:1 error:
 | |
| name:     num64 default:1 error:
 | |
| name:       flt default:1 error:
 | |
| name:       dbl default:1 error:
 | |
| name:     bool1 default:1 error:
 | |
| name:     bool2 default:1 error:
 | |
| name:     bool3 default:1 error:
 | |
| name:     dict1 default:1 error:
 | |
| name:     dict2 default:1 error:
 | |
| 
 | |
| Testing av_opt_get/av_opt_set()
 | |
| name: num         get: 0                set: OK               get: 0                OK
 | |
| name: toggle      get: 1                set: OK               get: 1                OK
 | |
| name: rational    get: 1/1              set: OK               get: 1/1              OK
 | |
| name: string      get: default          set: OK               get: default          OK
 | |
| name: escape      get: \=,              set: OK               get: \=,              OK
 | |
| name: flags       get: 0x00000001       set: OK               get: 0x00000001       OK
 | |
| name: size        get: 200x300          set: OK               get: 200x300          OK
 | |
| name: pix_fmt     get: 0bgr             set: OK               get: 0bgr             OK
 | |
| name: sample_fmt  get: s16              set: OK               get: s16              OK
 | |
| name: video_rate  get: 25/1             set: OK               get: 25/1             OK
 | |
| name: duration    get: 0.001            set: OK               get: 0.001            OK
 | |
| name: color       get: 0xffc0cbff       set: OK               get: 0xffc0cbff       OK
 | |
| name: cl          get: 0x137            set: OK               get: 0x137            OK
 | |
| name: bin         get: 62696E00         set: OK               get: 62696E00         OK
 | |
| name: bin1        get:                  set: OK               get:                  OK
 | |
| name: bin2        get:                  set: OK               get:                  OK
 | |
| name: num64       get: 1                set: OK               get: 1                OK
 | |
| name: flt         get: 0.333333         set: OK               get: 0.333333         OK
 | |
| name: dbl         get: 0.333333         set: OK               get: 0.333333         OK
 | |
| name: bool1       get: auto             set: OK               get: auto             OK
 | |
| name: bool2       get: true             set: OK               get: true             OK
 | |
| name: bool3       get: false            set: OK               get: false            OK
 | |
| name: dict1       get:                  set: OK               get:                  OK
 | |
| name: dict2       get: happy=\:-)       set: OK               get: happy=\:-)       OK
 | |
| 
 | |
| Test av_opt_serialize()
 | |
| num=0,toggle=1,rational=1/1,string=default,escape=\\\=\,,flags=0x00000001,size=200x300,pix_fmt=0bgr,sample_fmt=s16,video_rate=25/1,duration=0.001,color=0xffc0cbff,cl=0x137,bin=62696E00,bin1=,bin2=,num64=1,flt=0.333333,dbl=0.333333,bool1=auto,bool2=true,bool3=false,dict1=,dict2=happy\=\\:-)
 | |
| Setting entry with key 'num' to value '0'
 | |
| Setting entry with key 'toggle' to value '1'
 | |
| Setting entry with key 'rational' to value '1/1'
 | |
| Setting entry with key 'string' to value 'default'
 | |
| Setting entry with key 'escape' to value '\=,'
 | |
| Setting entry with key 'flags' to value '0x00000001'
 | |
| Setting entry with key 'size' to value '200x300'
 | |
| Setting entry with key 'pix_fmt' to value '0bgr'
 | |
| Setting entry with key 'sample_fmt' to value 's16'
 | |
| Setting entry with key 'video_rate' to value '25/1'
 | |
| Setting entry with key 'duration' to value '0.001'
 | |
| Setting entry with key 'color' to value '0xffc0cbff'
 | |
| Setting entry with key 'cl' to value '0x137'
 | |
| Setting entry with key 'bin' to value '62696E00'
 | |
| Setting entry with key 'bin1' to value ''
 | |
| Setting entry with key 'bin2' to value ''
 | |
| Setting entry with key 'num64' to value '1'
 | |
| Setting entry with key 'flt' to value '0.333333'
 | |
| Setting entry with key 'dbl' to value '0.333333'
 | |
| Setting entry with key 'bool1' to value 'auto'
 | |
| Setting entry with key 'bool2' to value 'true'
 | |
| Setting entry with key 'bool3' to value 'false'
 | |
| Setting entry with key 'dict1' to value ''
 | |
| Setting entry with key 'dict2' to value 'happy=\:-)'
 | |
| num=0,toggle=1,rational=1/1,string=default,escape=\\\=\,,flags=0x00000001,size=200x300,pix_fmt=0bgr,sample_fmt=s16,video_rate=25/1,duration=0.001,color=0xffc0cbff,cl=0x137,bin=62696E00,bin1=,bin2=,num64=1,flt=0.333333,dbl=0.333333,bool1=auto,bool2=true,bool3=false,dict1=,dict2=happy\=\\:-)
 | |
| 
 | |
| Testing av_set_options_string()
 | |
| Setting options string ''
 | |
| OK    ''
 | |
| Setting options string ':'
 | |
| Missing key or no key/value separator found after key ':'
 | |
| Error ':'
 | |
| Setting options string '='
 | |
| Missing key or no key/value separator found after key ''
 | |
| Error '='
 | |
| Setting options string 'foo=:'
 | |
| Setting entry with key 'foo' to value ''
 | |
| Key 'foo' not found.
 | |
| Error 'foo=:'
 | |
| Setting options string ':=foo'
 | |
| Setting entry with key ':' to value 'foo'
 | |
| Key ':' not found.
 | |
| Error ':=foo'
 | |
| Setting options string '=foo'
 | |
| Missing key or no key/value separator found after key ''
 | |
| Error '=foo'
 | |
| Setting options string 'foo='
 | |
| Setting entry with key 'foo' to value ''
 | |
| Key 'foo' not found.
 | |
| Error 'foo='
 | |
| Setting options string 'foo'
 | |
| Missing key or no key/value separator found after key 'foo'
 | |
| Error 'foo'
 | |
| Setting options string 'foo=val'
 | |
| Setting entry with key 'foo' to value 'val'
 | |
| Key 'foo' not found.
 | |
| Error 'foo=val'
 | |
| Setting options string 'foo==val'
 | |
| Setting entry with key 'foo' to value '=val'
 | |
| Key 'foo' not found.
 | |
| Error 'foo==val'
 | |
| Setting options string 'toggle=:'
 | |
| Setting entry with key 'toggle' to value ''
 | |
| Undefined constant or missing '(' in ''
 | |
| Unable to parse option value ""
 | |
| Error 'toggle=:'
 | |
| Setting options string 'string=:'
 | |
| Setting entry with key 'string' to value ''
 | |
| OK    'string=:'
 | |
| Setting options string 'toggle=1 : foo'
 | |
| Setting entry with key 'toggle' to value '1'
 | |
| Missing key or no key/value separator found after key 'foo'
 | |
| Error 'toggle=1 : foo'
 | |
| Setting options string 'toggle=100'
 | |
| Setting entry with key 'toggle' to value '100'
 | |
| Value 100.000000 for parameter 'toggle' out of range [0 - 1]
 | |
| Error 'toggle=100'
 | |
| Setting options string 'toggle==1'
 | |
| Setting entry with key 'toggle' to value '=1'
 | |
| Undefined constant or missing '(' in '=1'
 | |
| Unable to parse option value "=1"
 | |
| Error 'toggle==1'
 | |
| Setting options string 'flags=+mu-lame : num=42: toggle=0'
 | |
| Setting entry with key 'flags' to value '+mu-lame'
 | |
| Setting entry with key 'num' to value '42'
 | |
| Setting entry with key 'toggle' to value '0'
 | |
| OK    'flags=+mu-lame : num=42: toggle=0'
 | |
| Setting options string 'num=42 : string=blahblah'
 | |
| Setting entry with key 'num' to value '42'
 | |
| Setting entry with key 'string' to value 'blahblah'
 | |
| OK    'num=42 : string=blahblah'
 | |
| Setting options string 'rational=0 : rational=1/2 : rational=1/-1'
 | |
| Setting entry with key 'rational' to value '0'
 | |
| Setting entry with key 'rational' to value '1/2'
 | |
| Setting entry with key 'rational' to value '1/-1'
 | |
| Value -1.000000 for parameter 'rational' out of range [0 - 10]
 | |
| Value -1.000000 for parameter 'rational' out of range [0 - 10]
 | |
| Error 'rational=0 : rational=1/2 : rational=1/-1'
 | |
| Setting options string 'rational=-1/0'
 | |
| Error 'rational=-1/0'
 | |
| Setting options string 'size=1024x768'
 | |
| Setting entry with key 'size' to value '1024x768'
 | |
| OK    'size=1024x768'
 | |
| Setting options string 'size=pal'
 | |
| Setting entry with key 'size' to value 'pal'
 | |
| OK    'size=pal'
 | |
| Setting options string 'size=bogus'
 | |
| Setting entry with key 'size' to value 'bogus'
 | |
| Unable to parse option value "bogus" as image size
 | |
| Error 'size=bogus'
 | |
| Setting options string 'pix_fmt=yuv420p'
 | |
| Setting entry with key 'pix_fmt' to value 'yuv420p'
 | |
| OK    'pix_fmt=yuv420p'
 | |
| Setting options string 'pix_fmt=2'
 | |
| Setting entry with key 'pix_fmt' to value '2'
 | |
| OK    'pix_fmt=2'
 | |
| Setting options string 'pix_fmt=bogus'
 | |
| Setting entry with key 'pix_fmt' to value 'bogus'
 | |
| Unable to parse option value "bogus" as pixel format
 | |
| Error 'pix_fmt=bogus'
 | |
| Setting options string 'sample_fmt=s16'
 | |
| Setting entry with key 'sample_fmt' to value 's16'
 | |
| OK    'sample_fmt=s16'
 | |
| Setting options string 'sample_fmt=2'
 | |
| Setting entry with key 'sample_fmt' to value '2'
 | |
| OK    'sample_fmt=2'
 | |
| Setting options string 'sample_fmt=bogus'
 | |
| Setting entry with key 'sample_fmt' to value 'bogus'
 | |
| Unable to parse option value "bogus" as sample format
 | |
| Error 'sample_fmt=bogus'
 | |
| Setting options string 'video_rate=pal'
 | |
| Setting entry with key 'video_rate' to value 'pal'
 | |
| OK    'video_rate=pal'
 | |
| Setting options string 'video_rate=25'
 | |
| Setting entry with key 'video_rate' to value '25'
 | |
| OK    'video_rate=25'
 | |
| Setting options string 'video_rate=30000/1001'
 | |
| Setting entry with key 'video_rate' to value '30000/1001'
 | |
| OK    'video_rate=30000/1001'
 | |
| Setting options string 'video_rate=30/1.001'
 | |
| Setting entry with key 'video_rate' to value '30/1.001'
 | |
| OK    'video_rate=30/1.001'
 | |
| Setting options string 'video_rate=bogus'
 | |
| Setting entry with key 'video_rate' to value 'bogus'
 | |
| Undefined constant or missing '(' in 'bogus'
 | |
| Unable to parse option value "bogus" as video rate
 | |
| Error 'video_rate=bogus'
 | |
| Setting options string 'duration=bogus'
 | |
| Setting entry with key 'duration' to value 'bogus'
 | |
| Unable to parse option value "bogus" as duration
 | |
| Error 'duration=bogus'
 | |
| Setting options string 'duration=123.45'
 | |
| Setting entry with key 'duration' to value '123.45'
 | |
| OK    'duration=123.45'
 | |
| Setting options string 'duration=1\:23\:45.67'
 | |
| Setting entry with key 'duration' to value '1:23:45.67'
 | |
| OK    'duration=1\:23\:45.67'
 | |
| Setting options string 'color=blue'
 | |
| Setting entry with key 'color' to value 'blue'
 | |
| OK    'color=blue'
 | |
| Setting options string 'color=0x223300'
 | |
| Setting entry with key 'color' to value '0x223300'
 | |
| OK    'color=0x223300'
 | |
| Setting options string 'color=0x42FF07AA'
 | |
| Setting entry with key 'color' to value '0x42FF07AA'
 | |
| OK    'color=0x42FF07AA'
 | |
| Setting options string 'cl=stereo+downmix'
 | |
| Setting entry with key 'cl' to value 'stereo+downmix'
 | |
| OK    'cl=stereo+downmix'
 | |
| Setting options string 'cl=foo'
 | |
| Setting entry with key 'cl' to value 'foo'
 | |
| Unable to parse option value "foo" as channel layout
 | |
| Error 'cl=foo'
 | |
| Setting options string 'bin=boguss'
 | |
| Setting entry with key 'bin' to value 'boguss'
 | |
| Error 'bin=boguss'
 | |
| Setting options string 'bin=111'
 | |
| Setting entry with key 'bin' to value '111'
 | |
| Error 'bin=111'
 | |
| Setting options string 'bin=ffff'
 | |
| Setting entry with key 'bin' to value 'ffff'
 | |
| OK    'bin=ffff'
 | |
| Setting options string 'num64=bogus'
 | |
| Setting entry with key 'num64' to value 'bogus'
 | |
| Undefined constant or missing '(' in 'bogus'
 | |
| Unable to parse option value "bogus"
 | |
| Error 'num64=bogus'
 | |
| Setting options string 'num64=44'
 | |
| Setting entry with key 'num64' to value '44'
 | |
| OK    'num64=44'
 | |
| Setting options string 'num64=44.4'
 | |
| Setting entry with key 'num64' to value '44.4'
 | |
| OK    'num64=44.4'
 | |
| Setting options string 'num64=-1'
 | |
| Setting entry with key 'num64' to value '-1'
 | |
| Value -1.000000 for parameter 'num64' out of range [0 - 100]
 | |
| Error 'num64=-1'
 | |
| Setting options string 'num64=101'
 | |
| Setting entry with key 'num64' to value '101'
 | |
| Value 101.000000 for parameter 'num64' out of range [0 - 100]
 | |
| Error 'num64=101'
 | |
| Setting options string 'flt=bogus'
 | |
| Setting entry with key 'flt' to value 'bogus'
 | |
| Undefined constant or missing '(' in 'bogus'
 | |
| Unable to parse option value "bogus"
 | |
| Error 'flt=bogus'
 | |
| Setting options string 'flt=2'
 | |
| Setting entry with key 'flt' to value '2'
 | |
| OK    'flt=2'
 | |
| Setting options string 'flt=2.2'
 | |
| Setting entry with key 'flt' to value '2.2'
 | |
| OK    'flt=2.2'
 | |
| Setting options string 'flt=-1'
 | |
| Setting entry with key 'flt' to value '-1'
 | |
| Value -1.000000 for parameter 'flt' out of range [0 - 100]
 | |
| Error 'flt=-1'
 | |
| Setting options string 'flt=101'
 | |
| Setting entry with key 'flt' to value '101'
 | |
| Value 101.000000 for parameter 'flt' out of range [0 - 100]
 | |
| Error 'flt=101'
 | |
| Setting options string 'dbl=bogus'
 | |
| Setting entry with key 'dbl' to value 'bogus'
 | |
| Undefined constant or missing '(' in 'bogus'
 | |
| Unable to parse option value "bogus"
 | |
| Error 'dbl=bogus'
 | |
| Setting options string 'dbl=2'
 | |
| Setting entry with key 'dbl' to value '2'
 | |
| OK    'dbl=2'
 | |
| Setting options string 'dbl=2.2'
 | |
| Setting entry with key 'dbl' to value '2.2'
 | |
| OK    'dbl=2.2'
 | |
| Setting options string 'dbl=-1'
 | |
| Setting entry with key 'dbl' to value '-1'
 | |
| Value -1.000000 for parameter 'dbl' out of range [0 - 100]
 | |
| Error 'dbl=-1'
 | |
| Setting options string 'dbl=101'
 | |
| Setting entry with key 'dbl' to value '101'
 | |
| Value 101.000000 for parameter 'dbl' out of range [0 - 100]
 | |
| Error 'dbl=101'
 | |
| Setting options string 'bool1=true'
 | |
| Setting entry with key 'bool1' to value 'true'
 | |
| OK    'bool1=true'
 | |
| Setting options string 'bool2=auto'
 | |
| Setting entry with key 'bool2' to value 'auto'
 | |
| OK    'bool2=auto'
 | |
| Setting options string 'dict1='happy=\:-):sad=\:-(''
 | |
| Setting entry with key 'dict1' to value 'happy=\:-):sad=\:-('
 | |
| OK    'dict1='happy=\:-):sad=\:-(''
 | |
| 
 | |
| Testing av_opt_set_from_string()
 | |
| Setting options string ''
 | |
| OK    ''
 | |
| Setting options string '5'
 | |
| Setting 'num' to value '5'
 | |
| OK    '5'
 | |
| Setting options string '5:hello'
 | |
| Setting 'num' to value '5'
 | |
| Setting 'string' to value 'hello'
 | |
| OK    '5:hello'
 | |
| Setting options string '5:hello:size=pal'
 | |
| Setting 'num' to value '5'
 | |
| Setting 'string' to value 'hello'
 | |
| Setting 'size' to value 'pal'
 | |
| OK    '5:hello:size=pal'
 | |
| Setting options string '5:size=pal:hello'
 | |
| Setting 'num' to value '5'
 | |
| Setting 'size' to value 'pal'
 | |
| No option name near 'hello'
 | |
| Error '5:size=pal:hello'
 | |
| Setting options string ':'
 | |
| Setting 'num' to value ''
 | |
| Undefined constant or missing '(' in ''
 | |
| Unable to parse option value ""
 | |
| Error ':'
 | |
| Setting options string '='
 | |
| Setting '' to value ''
 | |
| Option '' not found
 | |
| Error '='
 | |
| Setting options string ' 5 : hello : size = pal '
 | |
| Setting 'num' to value '5'
 | |
| Setting 'string' to value 'hello'
 | |
| Setting 'size' to value 'pal'
 | |
| OK    ' 5 : hello : size = pal '
 | |
| Setting options string 'a_very_long_option_name_that_will_need_to_be_ellipsized_around_here=42'
 | |
| Setting 'a_very_long_option_name_that_will_need_to_be_ellipsized_around_here' to value '42'
 | |
| Option 'a_very_long_option_name_that_will_need_to_be_ellipsized_around_here' not found
 | |
| Error 'a_very_long_option_name_that_will_need_to_be_ellipsized_around_here=42'
 |