亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 6091 | 回復(fù): 6
打印 上一主題 下一主題

是否有把flv合并轉(zhuǎn)換為mp4的模塊或代碼? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2018-06-30 13:48 |只看該作者 |倒序?yàn)g覽
本帖最后由 hztj2005 于 2018-07-17 14:57 編輯

我從某些網(wǎng)站下載的公開課視頻,一節(jié)課有多個(gè)flv格式的片段,需要把多個(gè)flv合并轉(zhuǎn)換為mp4,因?yàn)閿?shù)量比較多,不想用格式轉(zhuǎn)換器一個(gè)一個(gè)手動(dòng)操作,希望用perl模塊或代碼批量處理,在cpan上搜,只有flv轉(zhuǎn)mp3的模塊,故在這里請(qǐng)教。

謝謝1樓的幫助,問題解決了,
下載B站公開課視頻,多個(gè)flv合并轉(zhuǎn)換為mp4。
代碼見7樓,6分鐘把590個(gè)flv合并轉(zhuǎn)換成190個(gè)mp4,相當(dāng)快。



在bilibili學(xué)科學(xué),有不少講得很好的理工科公開課。

https://zhuanlan.zhihu.com/p/25990210

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2018-07-02 10:51 |只看該作者
看看這個(gè):
https://github.com/rafaels/flv2mp4

其實(shí)用的就是:
`ffmpeg -i #{filename} -ar 22050 #{mp4_filename}`

評(píng)分

參與人數(shù) 1信譽(yù)積分 +10 收起 理由
hztj2005 + 10 贊一個(gè)!

查看全部評(píng)分

論壇徽章:
0
3 [報(bào)告]
發(fā)表于 2018-07-13 06:43 |只看該作者
本帖最后由 hztj2005 于 2018-07-13 07:59 編輯

回復(fù) 2# asthman

你給的鏈接是ruby語言吧?不懂該語言。
至于你給的語句,似乎是調(diào)用ffmpeg這個(gè)程序來完成任務(wù),
ffmpeg要事先安裝?
有點(diǎn)奇怪,下面鏈接下載不了:
https://ffmpeg.zeranoe.com/builds/#


論壇徽章:
12
子鼠
日期:2014-10-11 16:46:482016科比退役紀(jì)念章
日期:2018-03-16 10:24:0515-16賽季CBA聯(lián)賽之山東
日期:2017-11-10 14:32:142016科比退役紀(jì)念章
日期:2017-09-02 15:42:4715-16賽季CBA聯(lián)賽之佛山
日期:2017-08-28 17:11:5515-16賽季CBA聯(lián)賽之浙江
日期:2017-08-24 16:55:1715-16賽季CBA聯(lián)賽之青島
日期:2017-08-17 19:55:2415-16賽季CBA聯(lián)賽之天津
日期:2017-06-29 10:34:4315-16賽季CBA聯(lián)賽之四川
日期:2017-05-16 16:38:55黑曼巴
日期:2016-07-19 15:03:112015亞冠之薩濟(jì)拖拉機(jī)
日期:2015-05-22 11:38:5315-16賽季CBA聯(lián)賽之北京
日期:2019-08-13 17:30:53
4 [報(bào)告]
發(fā)表于 2018-07-13 08:39 |只看該作者
本帖最后由 523066680 于 2018-07-13 08:41 編輯

ffmpeg 是用來轉(zhuǎn)換合成視頻的工具,通過命令行或者shell腳本的方式調(diào)用就可以完成任務(wù)。

你貼的鏈接我這里試過可以下載

評(píng)分

參與人數(shù) 1信譽(yù)積分 +5 收起 理由
hztj2005 + 5 贊一個(gè)!

查看全部評(píng)分

論壇徽章:
0
5 [報(bào)告]
發(fā)表于 2018-07-13 10:30 |只看該作者
本帖最后由 hztj2005 于 2018-07-13 13:26 編輯

回復(fù) 4# 523066680
上面網(wǎng)站我這邊還是不能下載,在csdn下載了個(gè)2013版的。

ffmpeg命令參數(shù)說明:

https://www.cnblogs.com/wenrisheng/p/6139845.html


下面說:mp4 不支持直接 concate,需要繞道:
https://blog.csdn.net/flood_dragon/article/details/27539381

但flv可以:
ffmpeg -f concat -i mylist.txt -c copy output.flv  
-f concat 指定合并
見:
linux版ffmpeg批量合并FLV文件
https://www.5yun.org/8988.html
===通過mylist.txt 好像是flv文件僅有的合并方法===


另一個(gè)網(wǎng)頁上說:使用ffmpeg的concat可以實(shí)現(xiàn)簡(jiǎn)單的流文件合并功能。
ffmpeg -i concat:"out002.ts|out003.ts|out004.ts" -acodec copy -vcodec copy -f mp4 cat.mp4




https://www.cnblogs.com/hojor/p/3718887.html
最近再做m3u8切片合并下載的小功能,因?yàn)橐喜⒊蒻p4,所以考慮用ffmpeg來搞,mp4格式忒復(fù)雜了。
查了下文檔ffmpeg支持concat demux和concat protocol.
用法如下:
ffmpeg -i "concat:input1.mpg|input2.mpg|input3.mpg" -c copy output.mpg //這個(gè)是concat protocal,這個(gè)命令只支持一部分視頻格式 如mpeg1,2 mpegts,不支持flv,mp4

mylist.txt:
# this is a comment
file '/path/to/file1'
file '/path/to/file2'
file '/path/to/file3'

ffmpeg -f concat -i mylist.txt -c copy output //這個(gè)是運(yùn)用concat demux,和前面的命令有些不同,這個(gè)會(huì)把demux文件然后re-encode切片文件,所以只要ffmpeg支持的格式,這個(gè)命令都管用。

開始覺得這倆個(gè)命令功能是一樣的。實(shí)驗(yàn)了第一個(gè)命令 flv不管用,只輸出了第一片的flv。查了下官方文檔找到這一段:

The flv container format doesn't support file-level concatenation; only afew container file types do. So the concat protocol won't work on them.The concat demuxer, as its name suggests, demuxes the input streams fromtheir container and then concatenates them, so it doesn't care about whatthe input container is (and if the codecs are all the same w/ similarcharacteristics, you can actually concatenate files of different containerformats).



論壇徽章:
0
6 [報(bào)告]
發(fā)表于 2018-07-13 11:08 |只看該作者
本帖最后由 hztj2005 于 2018-07-14 07:42 編輯

flv轉(zhuǎn)mp4,第一次操作,網(wǎng)上找代碼試著用:


1、轉(zhuǎn)碼:把ye0.flv轉(zhuǎn)換為ye0.mp4,比較慢
ffmpeg -i ye0.flv -s 320x240 -r 30000/1001 -b 200k -bt 240k -vcodec libx264 -acodec libvo_aacenc -ac 2 -ar 48000 -ab 192k ye0.mp4


2、分離混流:把ye0.flv轉(zhuǎn)換為ye0h.mp4,快
網(wǎng)上說:由于視頻轉(zhuǎn)碼十分耗時(shí)間和cpu,假如flv和mkv正本便是選用的h264封裝,完全不需要轉(zhuǎn)碼,只需要把h264視頻和音頻文件分別出來,從頭混流一次即可,十幾秒內(nèi)即可結(jié)束,十分迅速,并且由于沒有轉(zhuǎn)碼操作,也避免了轉(zhuǎn)碼進(jìn)程的畫面丟掉。
ffmpeg.exe -i ye0.flv -y -vcodec copy -acodec copy ye0h.mp4

參數(shù)說明:
-i filename 指定輸入文件名
-y 覆蓋已有文件
-vcodec 視頻編解碼格式,如:h264或者libx264(h264編解碼)、copy(原樣拷貝)、mpeg4(mp4編碼)
-acodec 音頻編碼格式,如aac(aac編解碼)

論壇徽章:
0
7 [報(bào)告]
發(fā)表于 2018-07-13 21:58 |只看該作者
本帖最后由 hztj2005 于 2018-07-20 14:35 編輯
  1. <div class="blockcode"><blockquote>#!/usr/bin/perl -w

  2. #本代碼用于把B站下載的公開課flv文件合并同時(shí)轉(zhuǎn)換為mp4

  3. #可以用下面bat批處理文件把公開課flv片段集中到test目錄,再執(zhí)行合并同時(shí)轉(zhuǎn)換為mp4任務(wù)
  4. #@echo off
  5. #for /r D:\360Downloads\11813275 %%i in (*.flv) do move "%%i" D:\360Downloads\test
  6. #rem 把11813275下所有flv移動(dòng)到test
  7. #echo 完成任務(wù)


  8. my $DIR_PATH="C:/Users/asdfgh/Downloads/bilibili/zhoulei";
  9. opendir DIR, ${DIR_PATH} or die "Can not open ".$DIR_PATH."\n";
  10. @filelist = readdir DIR;#所有碎片文件名


  11. my $filename ="11668434_"."[0-9]+";#23123847_1_0
  12. my %fileall =();#@ 需要的文件名

  13. #搜索建立全部主文件名
  14. foreach $file (@filelist)
  15. {
  16.    if($file =~ m/($filename).*flv/)
  17.    {            
  18.             $fileall{$1}="1";            
  19.    }   
  20. }

  21. my $indexh = 1;
  22. foreach $key (keys %fileall)
  23. {
  24.    
  25.     #print "$key\n";
  26.    
  27.     my @partname =();
  28.    
  29.     foreach $file (@filelist)
  30.                 {
  31.                    if($file =~ m/($key)_/)
  32.                    {            
  33.                              push @partname,$file;
  34.                    }   
  35.                 }
  36.                 my @sorted_partname = sort @partname;#給讀入片段flv文件排序,保證合并連接秩序
  37.                
  38.                 my $string = "";
  39.     my $prestr ="file \'C:/Users/asdfgh/Downloads/bilibili/zhoulei/";
  40.                 foreach $partfile (@sorted_partname)
  41.                 {
  42.                   $string =  $string.$prestr.$partfile."\'\n";        
  43.           }
  44.                
  45.                 my $readlist = ">D:/360Downloads/test/mylist".$indexh.".txt";
  46.                 open (DOCLIST, $readlist) or die $!; #      
  47.     print DOCLIST $string;
  48.    
  49.     close DOCLIST;
  50.     my $readlist2 = "D:/360Downloads/test/mylist".$indexh.".txt"; #比$readlist少>號(hào)
  51.     my $flvout = "D:/360Downloads/test/out/".$key.".flv";#合并多個(gè)片段flv,得到的結(jié)果大文件,仍然是flv格式   
  52.     my $outstr = "ffmpeg -f concat -i ".$readlist2." -y -c copy ".$flvout;#構(gòu)造合并指令語句
  53.     system($outstr);#執(zhí)行合并      
  54.     #system("ffmpeg -f concat -i $outname -y -c copy output.flv");
  55.    
  56.     my $mp4out = "D:/360Downloads/test/out/".$key.".mp4";#用混流的方式把大flv文件轉(zhuǎn)換成mp4
  57.     my $changestr ="ffmpeg.exe -i ".$flvout." -y -vcodec copy -acodec copy ".$mp4out; #構(gòu)造混流轉(zhuǎn)換指令語句
  58.     system($changestr);#執(zhí)行混流轉(zhuǎn)換   
  59.     #ffmpeg.exe -i ye0.flv -y -vcodec copy -acodec copy ye0h.mp4
  60.    
  61.     unlink $flvout;#刪除合并的flv文件
  62.     $indexh++;
  63. }

  64. exit;
復(fù)制代碼

您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP