forked from tomorrow505/auto_feed_js
-
Notifications
You must be signed in to change notification settings - Fork 0
/
auto_feed_v1.6.8.js
9608 lines (8776 loc) · 471 KB
/
auto_feed_v1.6.8.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
// ==UserScript==
// @name auto_feed
// @author tomorrow505
// @thanks 感谢宝大、86大佬、贝壳大佬提供邀请码;感谢宝大、86大佬提供友情赞助;感谢手大、kmeng、黑白等大佬赠予PTP积分.(ID:tomorrow505, 感谢支持)
// @contributor daoshuailx/hollips/kmeng/wyyqyl
// @description PT一键转种脚本
// @include https://blutopia.xyz/torrents?imdb=tt*
// @namespace Violentmonkey Scripts
// @include http*://*/*details*.php*
// @include http*://*/upload*php*
// @include https://hd-space.org/index.php?page=upload
// @include https://hdcity.city/upload*
// @include https://hdbits.org/upload*
// @include https://hdbits.org/browse*
// @include https://passthepopcorn.me/torrents.php*
// @include https://hd-torrents.org/torrents.php*
// @include https://beyond-hd.me/upload*
// @include https://uhdbits.org/torrents.php*
// @include https://blutopia.xyz/upload/*
// @include https://pt.hdpost.top/upload/*
// @include http*://totheglory.im/t/*
// @include http*://privatehd.to/torrent/*
// @include http*://avistaz.to/torrent/*
// @include http*://passthepopcorn.me/torrents.php?id*
// @include http*://*php?id=*&torrentid=*
// @include https://*php?torrentid=*&id=*
// @include https://hdbits.org/details.php?id=*
// @include https://hdf.world/torrents.php*
// @include http*://www.morethan.tv/torrents.php?id*
// @include http*://beyond-hd.me/torrents/*
// @include http*://hon3yhd.com/details.php?id=*
// @include http*://www.torrentleech.org/torrent/*
// @include http*://blutopia.xyz/torrents/*
// @include https://*/torrents?imdb=tt*
// @include http*://www.bfdz.ink/tools/ptgen*
// @require https://cdn.staticfile.org/jquery/3.3.1/jquery.min.js
// @icon https://kp.m-team.cc//favicon.ico
// @run-at document-end
// @version v1.6.8
// @grant GM_xmlhttpRequest
// @grant GM_setClipboard
// @grant GM_download
// ==/UserScript==
/*
日志:
版本 v1.0
20200417:新增支持外站PHD和avz作为源站点;
20200420:新增馒头、猫站、春天、听歌、瓷器、我堡发布页面填写匹配 (by tomorrow505)
20200422:新增pthome、hdhome发布页面填写匹配; 修复我堡部分bug (by tomorrow505);新增天空、岛、联盟发布页面匹配 (by hollips)
版本 v1.1
20200424:新增MTV作为源站点, 新增ptp作为源站点(待测试) (by tomorrow505) ——> 已测试
20200425:新增一键打开常用站点的功能,需要设置common_sites (by tomorrow505)
20200427:修复CMCT新种子页面mediainfo信息异步加载获取不到的bug; 添加ptgen跳转,主要是为了方便外站查询信息 (by tomorrow505)
版本 v1.2
20200429:修改获取豆瓣信息的代码,使用promise进行链式简化;从副标题匹配是否包含国语粤语中字等信息并勾选标签 (by tomorrow505)
修复league(柠檬)分类更新导致错误分类的bug; 修复HDT有多个重复发布的资源获取类别错误的bug (by tomorrow505)
20200430:新增支持南洋、葡萄、TLF、杜比发布页填写匹配;完善官种感谢机制,在reg_team_name补充官方小组后缀名即可;
修复猫站官种转发table到其他站点混乱的bug (by tomorrow505)
版本 v1.3
20200501:修复插入节点不在常规位置的bug;修复cmct因为图片元素节点更名获取不到图片的bug (by tomorrow505)
修复HDT部分bug; 修复豆瓣获取button部分bug; 新增:瓷器没有豆瓣信息插入获取豆瓣获取button (by tomorrow505)
支持:萌猫——匹配一部分,因为是二级勾选,然后比较繁琐…… (by tomorrow505)
20200506: 匹配HDT原盘转发到春天。 (by hollips)
版本 v1.4
20200531: 修复TTG官种wiki转出图片未加载的bug; 修复猫站转出带站点转出链接提示的bug. (by tomorrow505)
增加北洋作为源站点的部分修复,支持北洋作为发布站点; 新增UHD作为源站点,费老劲了(by tomorrow505)
20200606: 新增blutopia为源站点 (by tomorrow505)
20200703:新增TCCF为发布站点;修复: 葡萄北洋默认勾选匿名。 (by tomorrow505)
20200713:大致支持印度站点hon3yhd,新增api替换选项。 (by tomorrow505)
20200714:烧包支持,海胆支持,diy标签支持;匿名整合作为用户选项。 (by tomorrow505)
版本 v1.5
20200715:支持蝴蝶转发及转出,可惜只能校内用户登录及IPV6用户(带有不确定因素)~; 支持HDFANS转发。 (by tomorrow505)
20200722:加入IPT进入豪华套餐。 (by tomorrow505)
20200723:加入xthor作为外网源站点,感谢贝壳大佬发邀。 (by tomorrow505)
20200724:支持hdroute..感谢假装大佬测试。佛曰:不可说; 修复萌猫的部分bug,修复其他站点部分bug。 (by tomorrow505)
20200725:支持Filelist作为源站点,感谢宝大发邀。 (by tomorrow505)
20200729:修复UHD原盘转发命名错误的bug,但是仍旧可能不准确,TL缺少mediainfo基本无解。 (by tomorrow505)
20200804:修复北邮人转出部分bug, 修复hon3yhd小组DRs原盘命名。 (by tomorrow505)
20200811:修复CMCT,对新版适配更加方便。 (by tomorrow505)
20200814:新增支持HDPOST、HDCity,整合代码提取两个函数。修复部分bug. 完善HDFans,完善海胆(by tomorrow505)
20200820;由于imdb转豆瓣解析api失效,暂时没有更好的办法,对外站获取豆瓣信息做了一丢丢修复工作。(by tomorrow505)
20200827:修复ptgen跳转出错问题、修复HDT失效问题。 (by tomorrow505)
20200828:修复PThome分辨率选择增加8K导致的错误,修正类别为动画或者纪录片获取初始为电影的错误; 修复HDHome原盘转载媒介错误的bug。整合精简部分代码。 (by tomorrow505)
20200829:新增支持发布到BHD,截图部分需要自行解决。 (by tomorrow505)
20200903:新增支持HDF作为源站点,但是基本缺少截图;简单修复ptgen跳转获取不到豆瓣信息的问题。 (by tomorrow505)
20200908:新增支持RED和皇后作为源站点,简单适配发布到柠檬及其他站点;简单音乐转载的修复部分bug, 修复皇后有两种版面-老种不规范带来的部分bug。
版本 v1.6
20200923:萌猫关站, 不再支持萌猫;支持U2作为源站点转外。
20200926:支持HDB作为源站转发。优化外站电视剧转载非第一季获取豆瓣过程,勾选API进行检索即可获得备选豆瓣链接。
20200927:支持BTN作为源站转发,基本集齐。
20200928:新修复一堆bug,以后大伙使用有bug可以直接给我抛链接和描述,尽量及时修复。
20201001:新增支持兽站、CCF、HDTime、龙之家、52PT、影客、伊甸园、PTMSG、铃音、碟粉、JoyHD、HDZone、Oshen、HDAtmos、PTNIC作为发布站点。
20201002:新增支持发布到HDT,简单适配。修复bug一堆。
20201019:高清街关站,不再支持。
20201027:新增Bdc为源站点,blutopia为发布站点(需要申请TMDB的api)、AHD。
20201115:修复柠檬,增加UHD作为发布站。
20201119:支持转发到HDSpace,取消支持IPT, 太混乱了。修复其余bug多项,完善PTP原盘命名,支持多个站点下载截图(外站很慢)。
20201129:简单适配KG电影类别。
20201227:修复柠檬域名,修复柠檬查重, 修复CMCT跳转查询,豆瓣页面新增跳转查询。
20210104:支持elite-tracker, 修复cmct转出感谢多次的bug。
20210308:取消对AHD的支持,修改HDPOST新架构的支持。
20210312:支持1PTBA、HITPT、PTtime(shmt86)、简单支持iTS(感谢黑白大佬提供帮助)->已经完善。 取消支持影客(关站)。
20210316:重构部分代码,用户变量提前至顶端,可以方便更改自己的配置;
20200318:修复HDT的图链bug一枚,修复BLU等相似架构搜索问题。
任务:
接下来想要做的事:完善各个块的代码逻辑(尤其是发布页形成函数封装),源页面干掉外站ajax,重构代码ing...
完善mediainfo和截图分离函数,大部分外站都需要分离操作;柠檬动漫和音乐改版之后代码需要重新整理。
*/
/*******************************************************************************************************************
* part 0 用户变量层 *
********************************************************************************************************************/
//提供可用的获取豆瓣信息两个api,从0-1选择。主要应用于外站,
const apis = ['https://ptgen.rhilip.info', 'https://api.rhilip.info/tool/movieinfo/gen'];
const api_chosen = 0;
const if_uplver = 1; //是否匿名,默认匿名,不匿名改成0
const tmdb_key = '0f79586eb9d92afa2b7266f7928b055c'; //TMDB API-KEY,用于发布需要TMDB编号的站点,这里提供一个key,如果使用不了了请自行申请
//欧美国家列表,可以酌情添加
const us_ue = ['挪威|丹麦|瑞典|芬兰|英国|爱尔兰|荷兰|比利时|卢森堡|法国|西班牙|葡萄牙|德国|奥地利|瑞士|美国|加拿大|澳大利亚|意大利|波兰|新西兰'];
//是否在PTP/HDB/HDT/UHD种子列表显示搜索跳转功能,1表示显示,0表示隐藏
const SHOW_PTP_SEARCH_URLS = 1;
const SHOW_HDB_SEARCH_URLS = 0;
const SHOW_HDT_SEARCH_URLS = 0;
const SHOW_UHD_SEARCH_URLS = 0;
//支持转发的站点列表,可以自行取消注释
const site_info = {
// '1PTBA': 'https://1ptba.com/',
// '52PT': 'https://52pt.site/',
// 'BHD' : 'https://beyond-hd.me/',
// 'BLU': "https://blutopia.xyz/",
// 'BTSchool': 'https://pt.btschool.club/',
// 'CCF': 'http://ccfbits.org/',
'CMCT': "https://springsunday.net/",
'CHDBits': "https://chdbits.co/",
// 'DiscFan': 'https://discfan.net/',
// 'Dragon': 'https://www.dragonhd.xyz/',
// 'HaiDan': 'https://www.haidan.video/',
'HD4FANS': 'https://pt.hd4fans.org/',
// 'HDArea': 'https://www.hdarea.co/',
// 'HDAtmos' : 'https://hdatmos.club/',
// 'HDB': 'https://hdbits.org/',
'HDChina': "https://hdchina.org/",
// 'HDCity': 'https://hdcity.city/',
// 'HDDolby': 'https://www.hddolby.com/',
// 'HDfans': 'http://hdfans.org/',
// 'HDHome': "https://hdhome.org/",
'HDPost': 'https://pt.hdpost.top/',
// 'HDRoute': 'http://hdroute.org/',
'HDSky': "https://hdsky.me/",
// 'HDSpace': 'https://hd-space.org/',
// 'HDT': 'https://hd-torrents.org/',
// 'HDTime': 'https://hdtime.org/',
// 'HDU': 'https://pt.hdupt.com/',
// 'HDZone': 'https://hdzone.me/',
// 'HITPT': 'https://www.hitpt.com/',
'HUDBT': 'https://hudbt.hust.edu.cn/',
// 'iTS': 'https://shadowthein.net/',
// 'JoyHD': 'https://www.joyhd.net/',
'LemonHD': "https://lemonhd.org/",
'MTeam': "https://kp.m-team.cc/",
// 'NanYang': "https://nanyangpt.com/",
// 'Oshen': 'http://www.oshen.win/',
'OurBits': "https://ourbits.club/",
'PTer': "https://pterclub.com/",
'PThome': "https://www.pthome.net/",
// 'PTMSG': 'https://pt.msg.vg/',
// 'PTNIC': 'https://www.ptnic.net/',
// 'ptsbao': 'https://ptsbao.club/',
// 'PTT': 'https://www.pttime.org/',
'PuTao': "https://pt.sjtu.edu.cn/",
// 'SoulVoice': 'https://pt.soulvoice.club/',
// 'TCCF': 'https://et8.org/',
'TJUPT': 'https://www.tjupt.org/',
'TLFbits': "http://pt.eastgame.org/",
'TTG': "https://totheglory.im/",
// 'UHD': 'https://uhdbits.org/',
// 'YDY' :'https://pt.hdbd.us/',
};
//支持快速搜索的站点列表,可自行添加或注释,举例:imdbid表示tt123456, imdbno表示123456,search_name表示the big bang thoery
const site_search_list = [
`<a href="https://passthepopcorn.me/torrents.php?searchstr={imdbid}" target="_blank">PTP</a>`,
// `<a href="https://broadcasthe.net/torrents.php?action=advanced&imdb={imdbid}" target="_blank">BTN</a>`,
`<a href="https://hdbits.org/browse.php?search={imdbid}" target="_blank">HDB</a>`,
`<a href="https://karagarga.in/browse.php?search={imdbid}&search_type=imdb" target="_blank">KG</a>`,
`<a href="http://cinemageddon.net/browse.php?search={imdbid}&proj=0&descr=1" target="_blank">CG</a>`,
`<a href="https://filelist.io/browse.php?search={imdbid}" target="_blank">FileList</a>`,
`<a href="https://beyond-hd.me/torrents?imdb={imdbid}" target="_blank">BHD</a>`,
`<a href="https://blutopia.xyz/torrents?imdb={imdbid}#page/1" target="_blank">BLU</a>`,
`<a href="https://pt.hdpost.top/torrents?imdb={imdbid}#page/1" target="_blank">HDPost</a>`,
`<a href="https://hd-torrents.org/torrents.php?&search={imdbid}" target="_blank">HDT</a>`,
`<a href="https://hd-space.org/index.php?page=torrents&search={imdbno}&active=1&options=2" target="_blank">HDSpace</a>`,
// `<a href="http://hdroute.org/browse.php?action=s&imdb={imdbno}" target="_blank">HDR</a>`,
// `<a href="https://hdf.world/torrents.php?searchstr={search_name}" target="_blank">HDF</a>`,
`<a href="https://privatehd.to/torrents?in=1&search={search_name}" target="_blank">PHD</a>`,
// `<a href="https://avistaz.to/torrents?in=1&search={search_name}" target="_blank">AVZ</a>`,
// `<a href="https://xthor.tk/browse.php?sch={search_name}" target="_blank">xTHOR</a>`,
`<a href="https://lemonhd.org/torrents.php?search={imdbid}&search_area=imdb&suggest=4" target="_blank">Lemon</a>`,
// `<a href="https://lemonhd.org/torrents.php?search={search_name}&search_area=0" target="_blank">Lemon2</a>`,
`<a href="https://uhdbits.org/torrents.php?searchstr={imdbid}" target="_blank">UHD</a>`
];
//常用站点列表,这里只是举例说明,可以替换成自己想要的站点名称即可
const common_sites = ['HDPost', 'TTG', 'CMCT', 'HUDBT', 'LemonHD', 'Pter'];
//这部分是属于官种名称匹配,用于声明感谢,可自定义匹配正则以及感谢bbcode
const reg_team_name = {
'MTeam': /-(.*mteam|mpad|tnp|BMDru)/i,
'CMCT': /-(CMCT|cmctv)/i,
'HDSky': /-(hds|.*@HDSky)/i,
'CHDBits': /-(CHD|.*@CHDBits)/i,
'OurBits': /(-Ao|-.*OurBits|-FLTTH|-IloveTV)/i,
'TTG': /-(WiKi|DoA|.*TTG|NGB|ARiN)/i,
'HDChina': /-(HDC)/i,
'PTer': /-(Pter|.*Pter)/i,
'LemonHD': /-(LHD|i18n|League.*)/i,
'HDHome': /-hdh/i,
'PThome': /(-pthome|-pth|.*@pth)/i,
'PuTao': /-putao/i,
'NanYang': /-nytv/i,
'TLFbits': /-tlf/i,
'HDDolby': /-DBTV/i,
'FRDS': /-FRDS|@FRDS/i,
'BeiTai': /-BeiTai/i
};
const thanks_str = "[quote][b][color=Blue]转自{site},感谢原制作者发布。[/color][/b][/quote]\n\n{descr}";
/*******************************************************************************************************************
* part 1 部分业务逻辑 *
********************************************************************************************************************/
//获取网页地址,有两种可能,一种匹配上发布页面,一种匹配上源页面,源页面进行解析,跳转发布页面进行填写
var site_url = decodeURI(location.href);
if (site_url.match(/^.{3,30}userdetail/i)) {
return;
}
//用于修改hdf的显示样式,不喜欢可以删除或者注释掉
if (site_url.match(/https:\/\/hdf\.world\/torrents\.php/i) && !site_url.match(/torrentid/i)){
$('.team_name').each(function(){
var $span = $(this).parent().next();
$span.find('a:eq(1)').append(" / --");
try{
if ($span.find('a:eq(1)').html().match(/Free/)){
$span.parent().css({'border-right': '5px solid yellow'});
}
} catch(err){}
$(this).html(`<font color='red'>${$(this).html()}</font>`)
$span.find('a:eq(1)').append($(this));
});
$('.group_torrent').each(function(){
$(this).find('td:eq(1)').css({"vertical-align": "middle", "text-align":"center"});
var text = $(this).find('td:eq(2)').html();
text = text.replace('ans', 'years').replace('mois', 'month').replace('heure', 'hour').replace('jour', 'day').replace('semaine', 'week').replace('1 an', '1 year');
$(this).find('td:eq(2)').html(text);
});
$('.group').each(function(){
$(this).find('td').css({"border-top": "2px solid darkgrey"});
$(this).find('td:lt(2)').remove();
$(this).find('td:eq(0)').attr("colSpan", "4");
var text = $(this).find('td:eq(1)').html();
text = text.replace('ans', 'years').replace('mois', 'month').replace('heure', 'hour').replace('jour', 'day').replace('semaine', 'week').replace('1 an', '1 year');
$(this).find('td:eq(1)').html(text);
$(this).find('td:eq(1)').css({"text-align":"right"});
});
$('.head:gt(1)').hide();
return;
}
//处理blutopia和hdpost跳转检索,因为其使用ajax异步检索
if (site_url.match(/https:\/\/blutopia\.xyz\/torrents\?imdb=tt.*/) || site_url.match(/https:\/\/pt\.hdpost\.top\/torrents\?imdb=tt.*/)){
$('#imdb').val(site_url.split('=')[1].split('#')[0]);
return;
}
//长mediainfo转换简洁版mediainfo,借鸡窝下蛋
if (site_url == 'https://www.bfdz.ink/tools/ptgen/'){
const N = "\n";
function get_general_info(general_info){
var general_text = "General\n";
try{
var filename = general_info.match(/Complete name.*?:(.*)/i)[1].split('/').pop().trim();
general_text += `Release Name.......: ${filename}${N}`;
} catch(err) {}
try{
var format = general_info.match(/format.*:(.*)/i)[1].trim();
general_text += `Container..........: ${format}${N}`;
} catch(err) {}
try{
var duration = general_info.match(/duration.*:(.*)/i)[1].trim();
general_text += `Duration...........: ${duration}${N}`;
} catch(err) {}
try {
var file_size = general_info.match(/file.{0,5}size.*:(.*)/i)[1].trim();
general_text += `Size...............: ${file_size}${N}`;
} catch(err) {}
general_text += `Source(s)..........: ${N}`;
// var date_ = new Date();
// var release_date = date_.getDate() + '/' + (date_.getMonth()+1) + '/' + date_.getFullYear();
// general_text += `Release date....: ${release_date}${N}${N}`;
return general_text;
}
function get_video_info(video_info){
var video_text = `Video${N}`;
try{
var codec = video_info.match(/format.*:(.*)/i)[1].trim();
video_text += `Codec..............: ${codec}${N}`;
} catch(err) {}
try {
var type = video_info.match(/scan.{0,5}type.*:(.*)/i)[1].trim();
video_text += `Type...............: ${type}${N}`;
} catch(err) {}
try{
var width = video_info.match(/width.*:(.*)/i)[1].trim();
var height = video_info.match(/height.*:(.*)/i)[1].trim();
var resolution = width.replace(/ /g, '').match(/\d+/)[0] + 'x' + height.replace(/ /g, '').match(/\d+/)[0];
video_text += `Resolution.........: ${resolution}${N}`;
} catch(err) {}
try{
var aspect_ratio = video_info.match(/display.{0,5}aspect.{0,5}ratio.*?:(.*)/i)[1].trim();
video_text += `Aspect ratio.......: ${aspect_ratio}${N}`;
} catch(err) {}
try{
var bit_rate = video_info.match(/bit.{0,5}rate(?!.*mode).*:(.*)/i)[1].trim();
video_text += `Bit rate...........: ${bit_rate}${N}`;
} catch(err) {}
try{
var frame_rate = video_info.match(/frame.{0,5}rate.*:(.*fps)/i)[1].trim();
video_text += `Frame rate.........: ${frame_rate}${N}`;
} catch(err) {}
video_text += `${N}`;
return video_text;
}
function get_audio_info(audio_info){
var audio_text = `Audio${N}`
try{
var format = audio_info.match(/format.*:(.*)/i)[1].trim();
audio_text += `Format.............: ${format}${N}`;
} catch(err) {}
try{
var channels = audio_info.match(/channel\(s\).*:(.*)/i)[1].trim();
audio_text += `Channels...........: ${channels}${N}`;
} catch(err) {}
try{
var bit_rate = audio_info.match(/bit.{0,5}rate(?!.*mode).*:(.*)/i)[1].trim();
audio_text += `Bit rate...........: ${bit_rate}${N}`;
} catch(err) {alert(err)}
try{
var language = audio_info.match(/language.*:(.*)/i)[1].trim();
audio_text += `Language...........: ${language}`;
} catch(err) {}
try{ var title = audio_info.match(/title.*:(.*)/i)[1].trim(); } catch(err){ title = ''}
audio_text += ` ${title}${N}${N}`
return audio_text;
}
function get_text_info(text_info){
var format = text_info.match(/format.*:(.*)/i)[1].trim();
var language = text_info.match(/language.*:(.*)/i)[1].trim();
try{ var title = text_info.match(/title.*:(.*)/i)[1].trim(); } catch(err){ title = ''}
var subtitle_text = `Subtitles..........: ${language} ${format} ${title}${N}`
return subtitle_text;
}
$('#status').hide(); $('#gen_out').hide(); $('#gen_replace').hide();
$('.form-inline').hide(); $('hr').hide();
$('.navbar-brand').first().html(`MediaInfo Parser`);
$('#gen_out').parent().append(`
<div id="mediainfo">
<textarea class="form-control" rows="22" id="media_info"></textarea>
</div>
<div id='transfer'>
<button class="btn btn-success" id="transfer_btn">转换</button>
</div>
<div id="clarify_mediainfo">
<textarea class="form-control" rows="22" id="clarify_media_info"></textarea>
</div>
`);
$('#transfer').click(function(){
var mediainfo_text = $('#media_info').val();
var general_info = mediainfo_text.match(/(general[\s\S]*?)?video/i)[0].trim();
general_info = get_general_info(general_info);
if (mediainfo_text.match(/encode.{0,10}date.*?:(.*)/i)){
var release_date = mediainfo_text.match(/encode.{0,10}date.*?:(.*)/i)[1].trim();
general_info += `Release date.......: ${release_date}`;
}
general_info += `${N}${N}`;
$('#clarify_media_info').val(general_info);
var video_info = mediainfo_text.match(/(video[\s\S]*?)audio/i)[0].trim();
video_info = get_video_info(video_info);
$('#clarify_media_info').val($('#clarify_media_info').val() + video_info);
var audio_info = mediainfo_text.match(/(audio[\s\S]*)(text)?/i)[0].trim();
var audio_infos = audio_info.split(/audio.*?\nid.*/i).filter(audio => audio.length > 30);
for (i=0; i < audio_infos.length; i++){
audio_info = get_audio_info(audio_infos[i]);
$('#clarify_media_info').val($('#clarify_media_info').val() + audio_info);
}
try{
var text_info = mediainfo_text.match(/(text[\s\S]*)$/i)[0].trim();
var text_infos = text_info.split(/text.*?\nid.*/i).filter(text => text.length > 30);
for (i=0; i < text_infos.length; i++){
subtitle_info = get_text_info(text_infos[i]);
$('#clarify_media_info').val($('#clarify_media_info').val() + subtitle_info);
}
} catch(err){
var subtitle_text = `Subtitles..........: no`;
$('#clarify_media_info').val($('#clarify_media_info').val() + subtitle_text);
}
console.log($('#clarify_media_info').val());
});
return;
}
//处理ptgen跳转,基本上使用频率很少了
if (site_url.match('ptgen')){
url = site_url.split('=')[1];
if (url.match(/tt/i)){
url = 'http://www.imdb.com/title/' + url + '/';
} else {
url = 'https://movie.douban.com/subject/' + url + '/';
}
document.getElementById('input_value').value = url;
document.getElementById('query_btn').click();
return;
}
/*******************************************************************************************************************
* part 2 常量、变量及函数定义封装层 *
********************************************************************************************************************/
//用于作为源站点但是不是转发站点的字典,大部分都外站
const o_site_info = {
'FRDS': 'https://pt.keepfrds.com/',
'BeiTai': 'https://www.beitai.pt/',
'byr': 'https://bt.byr.cn/',
'avz': 'https://avistaz.to/',
'PHD': 'https://privatehd.to/',
'PTP': 'https://passthepopcorn.me/',
'HDT': 'https://hd-torrents.org/',
'MTV': 'https://www.morethan.tv/',
'BHD': 'https://beyond-hd.me/',
'UHD': 'https://uhdbits.org/',
'BLU': 'https://blutopia.xyz/',
'hon3yhd': 'https://hon3yhd.com/',
'TorrentLeech': 'https://www.torrentleech.org/',
'xthor': 'https://xthor.tk/',
'FileList': 'https://filelist.io/',
'HDF': 'https://hdf.world/',
'HDB': 'https://hdbits.org/',
'BTN': 'https://broadcasthe.net/',
'RED': 'https://redacted.ch/',
'OpenCD': 'https://open.cd/',
'U2': 'https://u2.dmhy.org/',
'jpop': 'https://jpopsuki.eu/',
'Bdc': 'https://broadcity.in/',
'CG': 'http://cinemageddon.net/',
'KG': 'https://karagarga.in/',
'elite-tracker': 'https://elite-tracker.net/',
'iTS': 'https://shadowthein.net/'
};
//获取源站点
const origin_site = find_origin_site(site_url);
//部分站点加载图标会有问题,可以将图标下载下来上传到公网图床提供网址即可
const site_img_info = {
'HDHome': 'https://img.pterclub.com/images/2020/04/21/hdhfavicon.png',
'TJUPT': 'https://img.pterclub.com/images/2020/04/21/hdhfavicon.png',
'HDChina': 'https://img.pterclub.com/images/2020/04/21/hdcfavicon.png',
'HDArea': 'https://img.pterclub.com/images/2020/04/21/hdafavicon.png',
'BTSchool': 'https://img.pterclub.com/images/2020/05/05/bts.png',
'HDDolby': 'https://s1.ax1x.com/2020/09/27/0A8NNV.png',
'HDRoute': 'https://s1.ax1x.com/2020/09/27/0A8UhT.png',
'HUDBT': 'https://img.pterclub.com/images/2020/07/15/favicon.png',
'MTeam': 'https://i.endpot.com/image/4BLSA/favicon.jpg'
};
//用来拼接发布站点的url和字符串,也可用于识别发布页和源页面
const seperator = '#seperator#';
//iTS的简介模板,用于获取数据替换后填充
const its_base_content = `
[center]
[img]{poster}[/img]
[url={imdb_url}][img]https://i.ibb.co/KD855ZM/IMDb-Logo-2016.png[/img][/url] [size=3]{imdb_score}[/size] [*] [size=3][url={rt_url}][img]https://i.ibb.co/cDSgzxm/rt-logo.png[/img][/url] {rt_score}%[/size] [*] [url={tmdb_url}][img]https://i.ibb.co/VWMtVnN/0fa9aceda3e5.png[/img][/url] [size=3]{tmdb_score}%[/size]
[color=DarkOrange][size=2]◢ SYNOPSIS ◣[/size][/color]
{en_descr}
[color=DarkOrange][size=2]◢ TRAILER ◣[/size][/color]
[youtube]{youtube_url}[/youtube]
[color=DarkOrange][size=2]◢ SCREENSHOTS ◣[/size][/color]
{screenshots}
[/center]
`
//需要从源网页获取的信息,有些可能没有
var raw_info = {
//填充类信息
'name': '', //主标题
'small_descr': '', //副标题
'url': '', //imdb链接
'dburl': '', //豆瓣链接
'descr': '', //简介
'log_info': '', //音乐特有
'tracklist': '', //音乐特有
'music_type': '', //音乐特有
'music_media': '', //音乐特有
'animate_info': '', //动漫特有|针对北邮人北洋U2的命名方式
'anidb': '', //动漫特有
'torrent_name': '', //动漫辅助
'images': [], // 截图
//选择类信息
'type': '', //type:可取值——电影/纪录/体育/剧集/动画/综艺……
'source_sel': '', //来源(地区):可取值——欧美/大陆/港台/日本/韩国/印度……
'standard_sel': '', //分辨率:可取值——4K/1080p/1080i/720p/SD
'audiocodec_sel': '', //音频:可取值——AAC/AC3/DTS…………
'codec_sel': '', //编码:可取值——H264/H265……
'medium_sel': '', //媒介:可取值——web-dl/remux/encode……
//其他
'origin_site': '', //记录源站点用于跳转后识别
'origin_url': '', //记录源站点用于跳转后识别
'golden_torrent': false, //主要用于皮转柠檬
'mediainfo_cmct': '', //适用于春天的info
'imgs_cmct': '', //适用于春天的截图
'full_mediainfo': '', //完整的mediainfo有的站点有长短两种,如:铂金家、猫、春天
'youtube_url': '', //用于发布iTS
'ptp_poster': '', //用于发布iTS
};
//函数用来豆瓣信息搜索时候进行处理, 后期准备作废
const numToChn = function(num) {
var chnNumChar = ["零", "一", "二", "三", "四", "五", "六", "七", "八", "九"];
var index = num.toString().indexOf(".");
if (index != -1) {
var str = num.toString().slice(index);
var a = "点";
for (var i = 1; i < str.length; i++) {
a += chnNumChar[parseInt(str[i])];
}
return a;
} else {
return;
}
};
//添加搜索框架,可以自行添加或者注释站点
function add_search_urls(container, imdbid, imdbno, search_name, mode) {
var div_style = 'align="center" style="border: 1px solid blue;"';
var text = '快速搜索:';
var brs = '</br></br>';
var font_color = 'red';
if (mode == 1) {
div_style = ''; font_color = 'green'; text = ''; brs = '</br>';
} else if (mode == 2) {
div_style = ''; brs = '</br>';
} else if (mode == 3) {
div_style = ''; font_color = 'green'; text = ''; brs = '';
}
var site_search_lists = site_search_list.join(' | ');
site_search_lists = site_search_lists.format({'imdbid': imdbid, 'imdbno': imdbno, 'search_name': search_name});
container.append(`${brs}<div ${div_style}><font size="2px" color=${font_color}>${text}${site_search_lists}</font></div>`);
}
function numToChinese(num) { //定义在每个小节的内部进行转化的方法,其他部分则与小节内部转化方法相同
var chnNumChar = ["零", "一", "二", "三", "四", "五", "六", "七", "八", "九"];
var chnUnitChar = ["", "十", "百", "千"];
var str = '',
chnstr = '',
zero = false,
count = 0; //zero为是否进行补零, 第一次进行取余由于为个位数,默认不补零
if (num > 0 && num < 100) {
var v = num % 10;
var q = Math.floor(num / 10);
if (num < 10) { //如果数字为零,则对字符串进行补零
chnstr = chnNumChar[v] + chnstr;
} else if (num == 10) chnstr = chnUnitChar[1];
else if (num > 10 && num < 20) chnstr = "十" + chnNumChar[v];
else {
if (v == 0) chnstr = chnNumChar[q] + "十";
else chnstr = chnNumChar[q] + "十" + chnNumChar[v];
}
}
return chnstr;
}
//用来判断地址属于哪个站点(国内发布站点,国外源站点,或其他)
function find_origin_site(url){
var domain; //域名
var reg; //正则匹配表达式
var key;
//先从发布站点找
for (key in site_info){
//获取域名
domain = site_info[key].split('//')[1].replace('/', '');
reg = new RegExp(domain, 'i');
if (url.match(reg)){
if (key == 'HDB' && url.match(/uhdbits\.org/)){
return 'UHD';
}
return key;
}
}
//再从特殊源站点找
for (key in o_site_info){
//获取域名
domain = o_site_info[key].split('//')[1].replace('/', '');
reg = new RegExp(domain, 'i');
if (url.match(reg)){
return key;
}
}
return 'other';
}
//标签及其字标签转换为字符串,主要用于获取简介等等, 根据网页树的结构,采用前序遍历递归呈现。
function walkDOM(n) {
do {
if (n.nodeName == 'FONT') {
if (n.color != '') {
n.innerHTML = '[color=' + n.color + ']' + n.innerHTML + '[/color]';
}
if (n.size != '') {
n.innerHTML = '[size=' + n.size + ']' + n.innerHTML + '[/size]';
}
if (n.face != '') {
n.innerHTML = '[font=' + n.face + ']' + n.innerHTML + '[/font]';
}
} else if (n.nodeName == 'SCRIPT'){
n.innerHTML = '';
} else if (n.nodeName == 'SPAN') {
if (n.style.color != '') {
n.innerHTML = '[color=' + n.style.color + ']' + n.innerHTML + '[/color]';
}
} else if (n.nodeName == 'U'){
n.innerHTML = '[u]' + n.innerHTML + '[/u]';
} else if (n.nodeName == 'A') {
if (n.innerHTML != "" && n.href) {
if (site_url.match(/http(s*):\/\/chdbits.co\/details.php.*/i)) {
if (!n.innerHTML.match(/pic\/hdl\.gif/g)) {
n.innerHTML = '[url=' + n.href + ']' + n.innerHTML + '[/url]';
}
} else {
n.innerHTML = '[url=' + n.href + ']' + n.innerHTML + '[/url]';
}
}
} else if (n.nodeName == 'TABLE') {
if (n.innerHTML != "") {
if (site_url.match(/http(s*):\/\/totheglory.im.*/i)) {
n.innerHTML = '[quote]' + n.innerHTML + '[/quote]';
}
}
} else if (n.nodeName == 'P') {
if (n.innerHTML != "") {
if (site_url.match(/http(s*):\/\/totheglory.im.*/i)) {
n.innerHTML = '';
}
}
} else if (n.nodeName == 'FIELDSET' || n.nodeName == 'BLOCKQUOTE') {
if (!site_url.match(/hudbt/i) || n.nodeName != 'BLOCKQUOTE'){
n.innerHTML = '[quote]' + n.innerHTML + '[/quote]';
}
if (n.nodeName == 'FIELDSET' && n.textContent.match(/(温馨提示|郑重声明|您的保种|商业盈利|相关推荐|自动发布|仅供测试宽带)/g)) {
n.innerHTML = '';
}
} else if (n.nodeName == 'DIV' && n.innerHTML == '代码') {
n.innerHTML = '';
n.nextSibling.innerHTML = '[quote]' + n.nextSibling.innerHTML + '[/quote]';
} else if (n.nodeName == 'BR') {
if (site_url.match(/ourbits.club\/details.php.*|totheglory.im.*|blutopia.xyz.*|awesome-hd|hudbt|cinemageddon/i)) {
n.innerHTML = '\r\n';
}
} else if (n.nodeName == 'LEGEND') {
n.innerHTML = '';
} else if (n.nodeName == 'IMG') {
if (site_url.match(/http(s*):\/\/chdbits.co\/details.php.*/i)) {
if (!n.src.match(/pic\/hdl\.gif/g)) {
raw_info.descr = raw_info.descr + '[img]' + n.src + '[/img]';
}
} else {
raw_info.descr = raw_info.descr + '[img]' + n.src + '[/img]';
}
} else if (n.nodeName=='DIV' && site_url.match(/pthome/i) && n.className == 'codemain') {
n.innerHTML = '';
}
if (n.hasChildNodes()) {
walkDOM(n.firstChild);
} else {
raw_info.descr = raw_info.descr + n.textContent;
}
n = n.nextSibling;
} while (n);
return raw_info.descr;
}
//为了春天获取简介而写的定制节点转文本
function walk_cmct(n) {
do {
if (n.nodeName == 'SPAN') {
if (n.style.color != '') {
n.innerHTML = '[color=' + n.style.color + ']' + n.innerHTML + '[/color]';
}
} else if (n.nodeName == 'A') {
if (n.innerHTML != "") {
n.innerHTML = n.innerHTML;
}
} else if (n.nodeName == 'BR') {
n.innerHTML = '\r\n';
}
if (n.hasChildNodes()) {
walk_cmct(n.firstChild);
} else {
if (n.nodeType !=1){
raw_info.descr = raw_info.descr + n.textContent;
}
}
n = n.nextSibling;
} while (n);
return raw_info.descr;
}
//标签节点连带转换成字符串
function domToString (node) {
var tmpNode = document.createElement('div');
tmpNode.appendChild(node);
var str = tmpNode.innerHTML;
tmpNode = node = null; // 解除引用,以便于垃圾回收
return str;
}
//方便进行判断是否是源站点,不然太长了,属于源站点进入逻辑业务层
function judge_if_the_site_as_source() {
if (site_url.match(/http(s*):\/\/.*\/(upload|offer).*(php)?#seperator#/i)) {
return 0;
}
if (site_url.match(/https:\/\/hd-space\.org\/index.php\?page=upload/)){
return 0;
}
if (site_url.match(/https:\/\/hdcity.city\/upload\?tfu/)){
return 2;
}
if (site_url.match(/https:\/\/hdcity.city\/upload/)){
return 0;
}
if (site_url.match(/https:\/\/pt\.hdpost\.top/)){
return 1;
}
if (site_url.match(/http(s*):\/\/.*\/.*details.*php.*/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/totheglory.im\/t\/.*/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/passthepopcorn.me.*torrentid.*/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/broadcasthe.net.*torrentid.*/i)) {
return 1;
}
if (site_url.match(/https:\/\/hdbits\.org\/details\.php\?id=.*/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/privatehd.to\/torrent/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/avistaz.to\/torrent/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/www.morethan.tv\/torrents.php\?id/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/beyond-hd.me\/torrents/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/blutopia.xyz\//i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/awesome-hd.me\//i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/uhdbits.org\/torrents.php\?id=\d+&torrentid=\d+/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/hdf.world\/torrents.php\?id=\d+&torrentid=\d+/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/jpopsuki.eu\/torrents.php\?id=\d+&torrentid=\d+/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/redacted.ch\/torrents.php\?id=\d+&torrentid=\d+/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/www\.torrentleech\.org\/torrent\/*/i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/hon3yhd.com\//i)) {
return 1;
}
if (site_url.match(/http(s*):\/\/xthor.tk\//i)) {
return 1;
}
}
//判断是否是国内的站点,国内站点架构基本一致且不需要额外获取豆瓣信息
function judge_if_the_site_in_domestic() {
var domain; //域名
var reg; //正则匹配表达式
var key;
for (key in o_site_info){
if (key != 'FRDS' && key != 'BeiTai' && key != 'byr' && key != 'U2'){
domain = o_site_info[key].split('//')[1].replace('/', '');
reg = new RegExp(domain, 'i');
if (site_url.match(reg)){
return 0;
}
}
}
return 1;
}
//处理标题业务封装进函数
function deal_with_title(title){
title = title.replace(/\./g, ' ');
title = title.replace(/mkv$|mp4$/i, '');
if (title.match(/[^\d](2 0|5 1|7 1|1 0)/)) {
title = title.replace(/[^\d](2 0|5 1|7 1|1 0)/, function(data){
return data.slice(0,2)+'.'+ data.slice(3,data.length);
});
}
title = title.replace(/H ?(26[45])/i, "H.$1");
title = title.replace(/x265[.-]10bit/i, 'x265 10bit');
//处理免费后缀等等写在后边
title = title.replace(/\s+\[2?x?(免费|free)\].*$|\(限时.*\)|\(限時.*\)/ig, '');
title = title.replace(/\[.*?\]/ig, '');
title = title.replace(/剩余时间.*/i, '');
title = title.replace(/\(|\)/ig, '');
title = title.trim();
return title;
}
//处理副标题逻辑业务封装进函数
function deal_with_subtitle(subtitle){
//去除中括号等等
subtitle = subtitle.replace(/(\[|\])/g, "");
subtitle = subtitle.replace(/autoup/i, '');
return subtitle;
}
//字典转成字符串传达到跳转页面
function dictToString(my_dict){
var tmp_string = '';
var link_str = '#linkstr#';
var key;
for (key in my_dict){
tmp_string += key + link_str + my_dict[key] + link_str;
}
return tmp_string.slice(0, tmp_string.length-9);
}
//字符串转换成字典回来填充发布页面
function stringToDict(my_string){
var link_str = '#linkstr#';
var tmp_array = my_string.split(link_str);
var tmp_dict = {};
for (i = 0; i < tmp_array.length; i++) {
if (i % 2 == 0) {
tmp_dict[tmp_array[i]] = tmp_array[i + 1];
}
}
return tmp_dict;
}
//下面两个函数用来为字符串赋予format方法:例如——'thank you {site}'.format({'site':'ttg'}) => 'thank you ttg'
String.prototype.replaceAll = function (exp, newStr) {
return this.replace(new RegExp(exp, "gm"), newStr);
};
String.prototype.format = function(args) {
var result = this;
if (arguments.length < 1) {
return result;
}
var data = arguments; // 如果模板参数是数组
if (arguments.length == 1 && typeof (args) == "object") {
// 如果模板参数是对象
data = args;
}
for ( var key in data) {
var value = data[key];
if (undefined != value) {
result = result.replaceAll("\\{" + key + "\\}", value);
}
}
return result;
};
//下面几个函数为字符串赋予获取各种编码信息的方法——适用于页面基本信息和字符串
String.prototype.medium_sel = function() { //媒介
var result = this;
if (result.match(/(Webdl|Web-dl)/i)) {
result = 'WEB-DL';
} else if (result.match(/(HDTV)/i)) {
result = 'HDTV';
} else if (result.match(/(Remux)/i) && ! result.match(/Encode/)) {
result = 'Remux';
} else if (result.match(/(UHD|UltraHD)/i)) {
result = 'UHD';
} else if (result.match(/(Blu-ray|.MPLS)/i)) {
result = 'Blu-ray';
} else if (result.match(/(Encode|BDRIP|webrip|BluRay)/i)) {
result = 'Encode';
} else if (result.match(/(DVDRip|DVD)/i)) {
result = 'DVD';
} else {
result = '';
}
return result;
};
String.prototype.codec_sel = function() { //编码
var result = this;
if (result.match(/(H264|H\.264|AVC)/i)) {
result = 'H264';
} else if (result.match(/(HEVC|H265|H\.265)/i)) {
result = 'H265';
} else if (result.match(/(X265)/i)) {
result = 'X265';
} else if (result.match(/(X264)/i)) {
result = 'X264';
} else if (result.match(/(VC-1)/i)) {
result = 'VC-1';
} else if (result.match(/(MPEG-2)/i)) {
result = 'MPEG-2';
} else if (result.match(/(MPEG-4)/i)) {
result = 'MPEG-4';
} else if (result.match(/(XVID)/i)) {
result = 'XVID';
} else {
result = '';
}