Quantcast Bitrates: Testing CQmatic Versions - Page 3 - digitalFAQ.com Forums [Archives]
Go Back    digitalFAQ.com Forums [Archives] > Video Production Forums > Video Encoding and Conversion

Reply
 
LinkBack Thread Tools
  #41  
07-25-2003, 11:27 AM
jorel jorel is offline
Invalid Email / Banned / Spammer
 
Join Date: Aug 2002
Location: Brasil - MG - third stone from the sun
Posts: 5,570
Thanks: 0
Thanked 0 Times in 0 Posts
2 tests and results using CQMatic 1.0RC1 searching prediction:

first:
wanted size 290mb,31 minutes.
after 3 times searching prediction give CQ63,62.

second:
wanted size 800mb,88 minutes.
after 3 times searching prediction give CQ64,14.

i did 2 differents projects with dvd2avi.
the first with 56409 frames, 31 minutes,
the second with 159613 frames, 88 minutes.

i think it's perfect cos the final final CQ for each have seamless
and they are from the same source (dvd)!
i did the same tests twice...same results

Reply With Quote
Someday, 12:01 PM
admin's Avatar
Site Staff / Ad Manager
 
Join Date: Dec 2002
Posts: 42
Thanks: ∞
Thanked 42 Times in 42 Posts
  #42  
07-25-2003, 12:27 PM
Nobody Nobody is offline
Invalid Email / Banned / Spammer
 
Join Date: Oct 2012
Posts: 0
Thanks: 0
Thanked 0 Times in 0 Posts
Just adding my results (first time with CQmatic)

1 test and using CQMatic 1.0RC1 searching prediction:

Kangaroo Jack
MA script 352x480 encode
average bitrate=1106
film length=89 mins
Min=300 Max=2500
Cq=64.75

Won't bore you with the rest - 799M result with audio(128K)



Just a couple of questions:

I was using Min=300 Max=2500 - should I have used Min=average bitrate*0.75 and Max=2500 .... it did seem on target using the default KVCD template

Do I have to always find the target for TMPGenc before each try using CQmatic - or will it remember?

I may try the movie using 480x480 resolution (DVD player won't plaly the 528x480 ) - though still not sure if a lower CQ (~54) value is worth the increase in resolution

Anyway so far great work!!!!!!!!
Reply With Quote
  #43  
07-25-2003, 12:59 PM
audi2honda audi2honda is offline
Free Member
 
Join Date: Jun 2003
Location: Orange County, CA
Posts: 291
Thanks: 0
Thanked 0 Times in 0 Posts
I think there is some confusion here. .75*min or .57*min??
Reply With Quote
  #44  
07-25-2003, 01:12 PM
totonho03 totonho03 is offline
Free Member
 
Join Date: Apr 2003
Location: Fallston, MD. USA
Posts: 419
Thanks: 0
Thanked 0 Times in 0 Posts
Hello audi2honda:

Several posts have stated that the minimum should be (avg X .57)

Totonho03

Edit.- Audi2honda: I went back and saw what you are talking about............ I will go back to some other posts and try to clarify, at least in my mind what the proper number is....
Reply With Quote
  #45  
07-25-2003, 01:59 PM
totonho03 totonho03 is offline
Free Member
 
Join Date: Apr 2003
Location: Fallston, MD. USA
Posts: 419
Thanks: 0
Thanked 0 Times in 0 Posts
Yep, we need a clarification on this number.Different quotes regarding this issue:
Quote:
Keep the MAX at 2,000 and MIN = 0.57*(avg bitrate) ( Or average - 43% ) The one easier for you
Quote:
You want to set your MAX to 2000 and your MIN to 0.57*(avg bitrate).
Quote:
Used 2000 MAX and 0.57*1414 for min bitrate in tmpgenc (you need to announce that setting in the 'optimal scripts' section...
Quote:
You can probably use any bitrates you want now, but I'm still using the (0.57 * average) for MIN.


Quote:
I thought it was .75*avg bitrate or is it .57*avg bit rate?
.........
Quote:
0.57*average bitrate
Quote:
What bitrates did you use for MIN and MAX. Did you use MAX=2,500 and MIN=(0.75*AverageBitrate)
Quote:
i forgot to assign the lower bitrate value. All my encodes have been with 300-2500... I'll try now with 0,75*1111=833
These are but some of the quotes regarding this issue. I still believe that it is (average X .57). But I suppose that kwag will clarify it.

Totonho

Edit: This has been answered. It is (average * .57) Thanks kwag
Reply With Quote
  #46  
07-26-2003, 08:39 AM
Avalon Avalon is offline
Free Member
 
Join Date: Jul 2003
Location: Venus
Posts: 187
Thanks: 0
Thanked 0 Times in 0 Posts
Yesterday I encoded "The Bonecollector" with an modified KVCD Template.

FACTS: The final file was to small. 783 MB inkl. 2 128 Stereo MP2 Tracks.

Today now I test it with an modified MVCD 2.5ex Template. I did before a short sampler with both templates. Because I encode in 704x576 I was wondering why I get a better Quality with MVCD2.5ex!!!

So I encode now the movie again. I will post the FACTS then.

BTW: I had with KVCD a CQ of 53 and with MVCD i have now CQ 57.75!!!!

What I changed in both Templates: Motion estimate Search, 704x576. CQ 50 for start.

MVCD2.5ex encode 10% faster than KVCD... Why ????

Here the CQMatic Log:

Quote:
http://www.kvcd.net
CQMatic Version 1.0 RC-2
Copyright Softronex Corporation, 2003.
All rights reserved.

Ready!
Project: D:\dcd\bone\bonecollector.tpr

Creating: CQMatic.tpr

D:\dcd\bone\bone.m2v
Execute.
Movie Time: 113
Average Bitrate: 745
Full Encode mode
Executing Prediction Phase...
Using CQ of 50.00
User CQ too LOW!. CQ adjusted.
Using CQ of 55.00
Encoder started...
Encoder end.
File size difference = 1.067692
Last CQ = 55.000000
Current CQ = 56.861526
CQ difference = 1.861526
Using CQ of 56.86
Encoder started...
Encoder end.
File size difference = 1.014501
Last CQ = 56.861526
Current CQ = 57.686081
CQ difference = 0.824554
Using CQ of 57.69
Encoder started...
Encoder end.
File size difference = 0.980625
Last CQ = 57.686081
Current CQ = 57.273804
CQ difference = 0.412277
Using CQ of 57.27
Encoder started...
Encoder end.
Encoding set to Full encode.
Full encode start...
CQMatic complete!
Reply With Quote
  #47  
07-26-2003, 11:42 AM
kwag kwag is offline
Free Member
 
Join Date: Apr 2002
Location: Puerto Rico, USA
Posts: 13,537
Thanks: 0
Thanked 0 Times in 0 Posts
Quote:
Originally Posted by Avalon
Yesterday I encoded "The Bonecollector" with an modified KVCD Template.

FACTS: The final file was to small. 783 MB inkl. 2 128 Stereo MP2 Tracks.
Which is just fine, because it's ~17 MB under, and that's about 2% which is in my design target range.
Quote:

Today now I test it with an modified MVCD 2.5ex Template. I did before a short sampler with both templates. Because I encode in 704x576 I was wondering why I get a better Quality with MVCD2.5ex!!!
Because you can't compare pears and apples
704x576 is higher than 528x4576
But the longer the movie or more action (after bitrate starts to exhaust), you'll get more bits per pixel at 528x576, and it will look better than 704x576.
Quote:

n.

BTW: I had with KVCD a CQ of 53 and with MVCD i have now CQ 57.75!!!!
Of course They now have another matrix, which throws off the CQ curve completely, and a higher CQ doesn't mean it's better quality.
The only way you can compare, is if you make a target file size "identical" with their's and our's, and then compare ( I did, and I know the results )
BTW ( and FACT: ): MVCD and mole are " PERSONA NON GRATA" here, for their thieve practices. Maybe you should look at some facts here:
http://www.kvcd.net/forum/viewtopic.php?t=4364
and here:
http://www.kvcd.net/forum/viewtopic.php?t=4351
which of course, now they have their own matrix, but their foundation was based on our work, which permanently marks them as "Pirates" of technology.
Quote:

MVCD2.5ex encode 10% faster than KVCD... Why ????
It's telling you the results right there
Of course The encoder is seeing less data (because of their matrix), so you're loosing frequencies that are being discarded, and are not being processed by the encoder

Thanks for bringing this up

-kwag
Reply With Quote
  #48  
07-26-2003, 12:48 PM
dazedconfused dazedconfused is offline
Free Member
 
Join Date: Nov 2002
Posts: 316
Thanks: 0
Thanked 0 Times in 0 Posts
@Avalon,

Saying "mvcd" around here is similar to swearing! As Kwag directed you, mvcd
blatently and disrespectfully ripped-off their ideas from KVCD and didn't admit it. They may have made a few extra changes here and there lately so that they seem different or unique, but most people here at kvcd.net know the real truth about mvcd's origins.

-d&c
Reply With Quote
  #49  
07-26-2003, 05:31 PM
bigggt bigggt is offline
Free Member
 
Join Date: Mar 2003
Location: IamCanadian
Posts: 848
Thanks: 0
Thanked 0 Times in 0 Posts
After many tests i thought i would try an just do an encode and here are the results

Quote:
Ready!
Project: C:\Temp Videos\ice.tpr

Creating: CQMatic.tpr

C:\My Shared Folder\ice.m1v
Execute.
Movie Time: 81
Average Bitrate: 1240
Prediction Only mode
Executing Prediction Phase...
Using CQ of 70.00
Encoder started...
Encoder end.
File size difference = 1.498779
Last CQ = 70.000000
Current CQ = 90.000000
CQ difference = 20.000000
Using CQ of 90.00
Encoder started...
Encoder end.
File size difference = 0.849163
Last CQ = 90.000000
Current CQ = 76.424667
CQ difference = 13.575333
Using CQ of 76.42
Encoder started...
Encoder end.
File size difference = 1.228061
Last CQ = 76.424667
Current CQ = 83.212334
CQ difference = 6.787666
Using CQ of 83.21
Encoder started...
Encoder end.
File size difference = 0.918237
Last CQ = 83.212334
Current CQ = 79.818497
CQ difference = 3.393837
Using CQ of 79.82
Encoder started...
Encoder end.
File size difference = 1.071269
Last CQ = 79.818497
Current CQ = 81.515411
CQ difference = 1.696915
Using CQ of 81.52
Encoder started...
Encoder end.
File size difference = 0.966903
Last CQ = 81.515411
Current CQ = 80.666954
CQ difference = 0.848457
Using CQ of 80.67
Encoder started...
Encoder end.
File size difference = 1.010315
Last CQ = 80.666954
Current CQ = 81.499016
CQ difference = 0.832062
Using CQ of 81.50
Encoder started...
Encoder end.
File size difference = 0.967677
Last CQ = 81.499016
Current CQ = 81.082985
CQ difference = 0.416031
Using CQ of 81.08
Encoder started...
Encoder end.
File size difference = 0.986219
Last CQ = 81.082985
Current CQ = 80.874969
CQ difference = 0.208015
CQMatic complete!
Wasn't sure which number to use Last CQ = 81.082985
Current CQ = 80.874969(feeling pretty stupid now) but i decided to use 81.082985 and the final size of just the video is 792 m,now i figured i used the wrong one but there is such a small difference it wouldn't make it that much bigger.
Reply With Quote
  #50  
07-26-2003, 06:23 PM
kwag kwag is offline
Free Member
 
Join Date: Apr 2002
Location: Puerto Rico, USA
Posts: 13,537
Thanks: 0
Thanked 0 Times in 0 Posts
Hi bigggt,

Well, I think I'm going to have to specify that CQMatic is accurate only on DVD (MPEG-1 or MPEG-2) sources (for the time being), and not on avi sources
I'm getting very accurate results, but only processing .d2v (DVD) material.
Maybe it's a CODEC related issue when reading the avi
That's the ONLY thing I can think of, because it's the same process to calculate prediction, no matter what the source is.

@All,

Here are the tests I have encoded since yesterday, all with CQMatic RC2:

Red Planet (352x480): CQ: 80.120 Encoded size: 742,198KB Wanted: 726,338KB ( Diff. 2.13% )
The Bourne Identity (528x480): CQ 56.25 Encoded size: 715,574KB Wanted: 715,701KB ( Diff. 0.017% )
K19 ( 528x480 - Raw, no filters. Only Bilinear resize): CQ: 61.06 Encoded size: 678,294KB Wanted: 699,875.78 ( Diff. -3.181 )

So for CQMatic RC-3, I'm adjusting the final precision by 1% (tighter) to shrink the final bracket calculation. This should bring the average final encoded material to about (-2% to +1%).

-kwag
Reply With Quote
  #51  
07-26-2003, 07:25 PM
bigggt bigggt is offline
Free Member
 
Join Date: Mar 2003
Location: IamCanadian
Posts: 848
Thanks: 0
Thanked 0 Times in 0 Posts
Hey Kwag,the thing is Tok gave me almost the identical CQ and now when i went to mux the audio and video with bbmpeg(never had a problem before)it won't even scan the video so i'm thinking i must have a problem in tmpeg. here is what it says in bbmpeg

Quote:
Video: none

Audio: none

Output MPEG information
Video: none

Audio: none

Multiplexing: video and one audio stream
program stream type: VCD
video file: c:\my shared folder\ice.m1v
audio 1 file: c:\my shared folder\ice.mp2
program file: temp.mpg


Multiplexing video and audio:

Scanning video stream for a sequence header ...

Scanning video stream for pictures ...
Found 1 picture headers.
Video stream information
Stream length : 13008
Total time (seconds) : 0
Sequence start : 1
Sequence end : 1
No. Pictures : 1
No. Groups : 1
No. I Frames : 1 avg. size 13008 bytes
No. P Frames : 0 avg. size 0 bytes
No. B Frames : 0 avg. size 0 bytes
No. D Frames : 0 avg. size 0 bytes
Horizontal size : 528
Vertical size : 480
Aspect ratio : 1.0950
Picture rate : 23.976 frames/sec
Bit rate : variable
Computed avg rate : 312500 bytes/sec (2500000 bits/sec)
Computed max rate : 0 bytes/sec (0 bits/sec)
Vbv buffer size : 40960 bytes
CSPF : 0

Scanning audio stream for access units information
Found 186522 audio frame headers.
MPEG audio stream information
Stream length : 68213760
Syncwords : 186522
Frames : 53292 size 365 bytes
Frames : 133230 size 366 bytes
Layer : 2
CRC checksums : yes
Bit rate : 14000 bytes/sec (112 kbit/sec)
Frequency : 44.1 kHz
Mode : 2 dual channel
Mode extension : 0
Copyright bit : 1 copyright protected
Original/Copy : 1 original
Emphasis : 0 none

Multiplexing information
Video stream data rate : 0 bytes/sec (0 bits/sec)
Audio stream 1 data rate : 14000 bytes/sec (112000 bits/sec)
Overhead data rate : 200 bytes/sec (1600 bits/sec)
Total data rate : 14200 bytes/sec (113600 bits/sec)

Multiplexing file temp00.mpg
audio PTS underflow at pack 18 by 2.06ms
audio PTS underflow at pack 19 by 11.99ms
audio PTS underflow at pack 21 by 5.72ms
audio PTS underflow at pack 22 by 15.66ms
audio PTS underflow at pack 23 by 25.59ms
audio PTS underflow at pack 24 by 9.40ms
audio PTS underflow at pack 25 by 19.33ms
and the audio underflow keep going
Reply With Quote
  #52  
07-26-2003, 07:31 PM
kwag kwag is offline
Free Member
 
Join Date: Apr 2002
Location: Puerto Rico, USA
Posts: 13,537
Thanks: 0
Thanked 0 Times in 0 Posts
You bet you have a problem . Look at this:

Code:
No. I Frames : 1 avg. size 13008 bytes 
No. P Frames : 0 avg. size 0 bytes 
No. B Frames : 0 avg. size 0 bytes 
No. D Frames : 0 avg. size 0 bytes
Your mpeg file is encoded as I pictures only

Edit: Try this: Open your .avs file, and then load your template.
Then save your text project

-kwag
Reply With Quote
  #53  
07-26-2003, 07:35 PM
bigggt bigggt is offline
Free Member
 
Join Date: Mar 2003
Location: IamCanadian
Posts: 848
Thanks: 0
Thanked 0 Times in 0 Posts
How would this have happened and how do i adjust it
Reply With Quote
  #54  
07-26-2003, 07:37 PM
kwag kwag is offline
Free Member
 
Join Date: Apr 2002
Location: Puerto Rico, USA
Posts: 13,537
Thanks: 0
Thanked 0 Times in 0 Posts
Quote:
Originally Posted by bigggt
How would this have happened and how do i adjust it
Somehow, the values in your template got all screwed up
So just reload your template, but after you load your .avs source. Remember to clear the source range before saving.
Try that

-kwag
Reply With Quote
  #55  
07-26-2003, 07:49 PM
bigggt bigggt is offline
Free Member
 
Join Date: Mar 2003
Location: IamCanadian
Posts: 848
Thanks: 0
Thanked 0 Times in 0 Posts
Thanx Kwag,tried it with a short clip and everything worked ,everytim i open souce range i get errors so maybe i hit the wrong button
Reply With Quote
  #56  
07-27-2003, 10:35 AM
kwag kwag is offline
Free Member
 
Join Date: Apr 2002
Location: Puerto Rico, USA
Posts: 13,537
Thanks: 0
Thanked 0 Times in 0 Posts
Here's another result, with RC-3:

Code:
http://www.kvcd.net
CQMatic Version 1.0 RC-3
Copyright Softronex Corporation, 2003.
All rights reserved.
Time: 04:44:40 Date: 07/27/2003
Ready!
Project: K:\boon.tpr

Creating: CQMatic.tpr

k:\boon.m1v
Execute.
Movie Time: 110
Average Bitrate: 881
Full Encode mode
Executing Prediction Phase...
Using CQ of 60.00
Process started at 04:45:19
On 07/27/2003
Encoder started...
Process time: 8.22 minutes.
Encoder end.
File size difference  = 1.149309
Last CQ = 60.000000
Current CQ = 64.479263
CQ difference = 4.479263
Using CQ of 64.48
Encoder started...
Process time: 8.38 minutes.
Encoder end.
File size difference  = 1.042271
Last CQ = 64.479263
Current CQ = 67.204895
CQ difference = 2.725632
Using CQ of 67.20
Encoder started...
Process time: 8.40 minutes.
Encoder end.
File size difference  = 0.996189
Last CQ = 67.204895
Current CQ = 66.948753
CQ difference = 0.256142
Using CQ of 66.95
Encoder started...
Process time: 7.07 minutes.
Encoder end.
Encoding set to Full encode.
Full encode start...
CQMatic complete!
Total minutes of process: 32.08
Process ended at 05:17:24
On 07/27/2003

Wanted file size (Moviestacker) 722,779.89KB
Encoded file size 718,351.00KB


-kwag
Reply With Quote
  #57  
07-30-2003, 04:24 AM
Krassi Krassi is offline
Free Member
 
Join Date: Mar 2003
Location: Germany
Posts: 390
Thanks: 0
Thanked 0 Times in 0 Posts
Hi Kwag,

finally i have good results (1.0 Release) with my "problematic" source:
Code:
http://www.kvcd.net
CQMatic Version 1.0 Release.
Copyright Softronex Corporation, 2003.
All rights reserved.
Time: 09:03:01 Date: 07/30/2003
Ready!
Project: CQMatic.tpr

Creating: CQMatic.tpr

D:\CQMatic.m1v
Execute.
Movie Time: 23
Average Bitrate: 1111
Full Encode mode
Executing Prediction Phase...
Process started at 09:04:29
On 07/30/2003
CQ too LOW!. Adjusted.
Using CQ of 55.00
Entering CF phase.
Using CQ of 50.00
FAST source analysis...
Process time: 0.82 minutes.
Encoder end.
Correction Factor = 1.2172
Exit CF phase.
Using CQ of 55.00
Encoder started...
Process time: 2.08 minutes.
Encoder end.
File size difference  = 0.918753
Last CQ = 55.000000
Current CQ = 52.765713
Using CQ of 52.77
Encoder started...
Process time: 1.92 minutes.
Encoder end.
File size difference  = 0.920848
Last CQ = 52.765713
Current CQ = 51.648567
Low diff. CQ bumped!
Using CQ of 38.74
Encoder started...
Process time: 1.93 minutes.
Encoder end.
File size difference  = 1.105837
Last CQ = 38.736427
Current CQ = 42.836178
Using CQ of 42.84
Encoder started...
Process time: 1.97 minutes.
Encoder end.
File size difference  = 1.045624
Last CQ = 42.836178
Current CQ = 44.790550
Using CQ of 44.79
Encoder started...
Process time: 2.05 minutes.
Encoder end.
File size difference  = 1.039260
Last CQ = 44.790550
Current CQ = 46.549034
Using CQ of 46.55
Encoder started...
Process time: 1.85 minutes.
Encoder end.
File size difference  = 0.985443
Last CQ = 46.549034
Current CQ = 45.871441
Using CQ of 45.87
Encoder started...
Process time: 1.72 minutes.
Encoder end.
File size difference  = 0.990424
Last CQ = 45.871441
Current CQ = 45.432171
Using CQ of 45.43
Encoder started...
Process time: 1.73 minutes.
Encoder end.
File size difference  = 1.007729
Last CQ = 45.432171
Current CQ = 45.783298
Using CQ of 45.78
Encoder started...
Process time: 1.82 minutes.
Encoder end.
File size difference  = 0.993927
Last CQ = 45.783298
Current CQ = 45.505245
Using CQ of 45.51
Encoder started...
Process time: 1.88 minutes.
Encoder end.
File size difference  = 1.004599
Last CQ = 45.505245
Current CQ = 45.714527
Using CQ of 45.71
Encoder started...
Process time: 1.92 minutes.
Encoder end.
File size difference  = 0.996475
Last CQ = 45.714527
Current CQ = 45.553398
Using CQ of 45.55
Encoder started...
Process time: 1.90 minutes.
Encoder end.
File size difference  = 1.002894
Last CQ = 45.553398
Current CQ = 45.685249
Using CQ of 45.69
Encoder started...
Process time: 1.92 minutes.
Encoder end.
File size difference  = 0.997348
Last CQ = 45.685249
Current CQ = 45.564083
Using CQ of 45.56
Encoder started...
Process time: 1.90 minutes.
Encoder end.
File size difference  = 1.002434
Last CQ = 45.564083
Current CQ = 45.674969
Using CQ of 45.67
Encoder started...
Process time: 1.92 minutes.
Encoder end.
Encoding set to Full encode.
Full encode start...
CQMatic complete!
Total minutes of process: 29.32
Process ended at 09:33:48
On 07/30/2003
Final video size is 181 MB, wanted is 188
Reply With Quote
  #58  
07-30-2003, 10:16 AM
kwag kwag is offline
Free Member
 
Join Date: Apr 2002
Location: Puerto Rico, USA
Posts: 13,537
Thanks: 0
Thanked 0 Times in 0 Posts
Great to hear that Krassi
Well, I guess CQMatic is getting better
Btw, what type of source was that

-kwag
Reply With Quote
  #59  
07-31-2003, 01:26 AM
Krassi Krassi is offline
Free Member
 
Join Date: Mar 2003
Location: Germany
Posts: 390
Thanks: 0
Thanked 0 Times in 0 Posts
Quote:
Originally Posted by kwag
Great to hear that Krassi
Well, I guess CQMatic is getting better
Btw, what type of source was that

-kwag
Sorry for my late response. It is a mpeg2 video stream from a digital satellite receiver card (near DVD quality).
Reply With Quote
  #60  
07-31-2003, 01:58 AM
kwag kwag is offline
Free Member
 
Join Date: Apr 2002
Location: Puerto Rico, USA
Posts: 13,537
Thanks: 0
Thanked 0 Times in 0 Posts
Quote:
Originally Posted by Krassi
Sorry for my late response. It is a mpeg2 video stream from a digital satellite receiver card (near DVD quality).
So that means it is an interlaced stream, right

-kwag
Reply With Quote
Reply




Similar Threads
Thread Thread Starter Forum Replies Last Post
Bitrates: Question About Latest Versions Of CQMatic/CalcuMatic gretagun Video Encoding and Conversion 2 01-22-2005 05:06 PM
Bitrates: How to use CQMatic? mistermickster Video Encoding and Conversion 1 08-29-2003 06:47 AM
Bitrates: Beta Testing with same source and same settings Krassi Video Encoding and Conversion 57 08-19-2003 03:39 PM
Bitrates: KDVD bitrates with CQMatic nicksteel Video Encoding and Conversion 10 08-06-2003 08:44 AM
CQMatic: Too many filters with differant versions! Max Powers Video Encoding and Conversion 32 07-29-2003 11:21 PM




 
All times are GMT -5. The time now is 10:05 AM  —  vBulletin © Jelsoft Enterprises Ltd