ffmpeg 基本用法

ffmpeg主要組成部分

1歇僧、libavformat:用于各種音視頻封裝格式的生成和解析访诱,包括獲取解碼所需信息以生成解碼上下文結(jié)構(gòu)和讀取音視頻幀等功能垫挨,包含demuxers和muxer庫;
2触菜、libavcodec:用于各種類型聲音/圖像編解碼九榔;
3、libavutil:包含一些公共的工具函數(shù)涡相;
4帚屉、libswscale:用于視頻場景比例縮放、色彩映射轉(zhuǎn)換漾峡;
5、libpostproc:用于后期效果處理喻旷;
6生逸、ffmpeg:是一個命令行工具,用來對視頻文件轉(zhuǎn)換格式且预,也支持對電視卡實(shí)時編碼槽袄;
7、ffsever:是一個HTTP多媒體實(shí)時廣播流服務(wù)器锋谐,支持時光平移遍尺;
8、ffplay:是一個簡單的播放器涮拗,使用ffmpeg 庫解析和解碼乾戏,通過SDL顯示迂苛;
在這組成部分中,需要熟悉基礎(chǔ)概念有
容器(Container)
容器就是一種文件格式鼓择,比如flv三幻,mkv等。包含下面5種流以及文件頭信息呐能。
流(Stream)
是一種視頻數(shù)據(jù)信息的傳輸方式念搬,5種流:音頻,視頻摆出,字幕朗徊,附件碴倾,數(shù)據(jù)甫何。
幀(Frame)
幀代表一幅靜止的圖像,分為I幀思灌,P幀骑丸,B幀舌仍。
編解碼器(Codec)
是對視頻進(jìn)行壓縮或者解壓縮,CODEC =COde (編碼) +DECode(解碼)
復(fù)用/解復(fù)用(mux/demux)
把不同的流按照某種容器的規(guī)則放入容器通危,這種行為叫做復(fù)用(mux)
把不同的流從某種容器中解析出來铸豁,這種行為叫做解復(fù)用(demux)

ffmpeg的處理流程

image.png

1、FFmpeg程序把-i參數(shù)指定的若干文件內(nèi)容讀入到內(nèi)存菊碟,按照輸入的參數(shù)或者程序默認(rèn)的參數(shù)來處理并且把結(jié)果寫入到若干的文件中节芥。輸入和輸出文件可以是計算機(jī)文件、管道逆害、網(wǎng)絡(luò)流头镊、捕獲設(shè)備等。
2魄幕、FFmpeg用libavformat包調(diào)用解復(fù)用器(demuxers)來讀取輸入文件中被編碼的數(shù)據(jù)包(packets)相艇,如果有多個輸入文件,F(xiàn)Fmpeg以有效輸入流的最小時間戳來同步纯陨,
3坛芽、然后解碼器(decoder)從已編碼的數(shù)據(jù)包中產(chǎn)生未被壓縮的幀(frame),在那之后調(diào)用可選的過濾器翼抠。
4咙轩、這些幀被傳遞到編碼器,編碼器會產(chǎn)生新的編碼包
5阴颖、把新的編碼包傳遞給復(fù)用器(muxer)處理并且把結(jié)果寫入到輸出文件中活喊。

過濾器(Filter)

在多媒體處理中,filter的意思是被編碼到輸出文件之前用來修改輸入文件內(nèi)容的一個軟件工具量愧。如:視頻翻轉(zhuǎn)钾菊,旋轉(zhuǎn)帅矗,縮放等。
語法:[input_link_label1]… filter_name=parameters [output_link_label1]…
1结缚、視頻過濾器 -vf
如input.mp4視頻按順時針方向旋轉(zhuǎn)90度
ffplay -i input.mp4 -vf transpose=1
如input.mp4視頻水平翻轉(zhuǎn)(左右翻轉(zhuǎn))
ffplay -i input.mp4 -vf hflip
2损晤、音頻過濾器 -af
實(shí)現(xiàn)慢速播放,聲音速度是原始速度的50%
offplay input.mp3 -af atempo=0.5

過濾器鏈(Filterchain)
Filterchain = 逗號分隔的一組filter
語法:“filter1,filter2,filter3,…filterN-2,filterN-1,filterN”
順時針旋轉(zhuǎn)90度并水平翻轉(zhuǎn)
ffplay -i input.mp4 -vf transpose=1,hflip

過濾器圖(Filtergraph)
第一步: 源視頻寬度擴(kuò)大兩倍红竭。
ffmpeg -i jidu.mp4 -t 10 -vf pad=2*iw output.mp4
第二步:源視頻水平翻轉(zhuǎn)
ffmpeg -i jidu.mp4 -t 10 -vf hflip output2.mp4
第三步:水平翻轉(zhuǎn)視頻覆蓋output.mp4
ffmpeg -i output.mp4 -i output2.mp4 -filter_complex overlay=w compare.mp4
是不是很復(fù)雜尤勋?
用帶有鏈接標(biāo)記的過濾器圖(Filtergraph)只需一條命令

基本語法
Filtergraph = 分號分隔的一組filterchain
“filterchain1;filterchain2;…filterchainN-1;filterchainN”

Filtergraph的分類
1、簡單(simple) 一對一
2茵宪、復(fù)雜(complex)多對一最冰, 多對多
簡單過濾器圖處理流程:


image.png

復(fù)雜過濾器圖處理流程:


image.png

從圖中可以發(fā)現(xiàn)復(fù)雜過濾器圖比簡單過濾器圖少2個步驟,效率比簡單高稀火,ffmpeg建議盡量使用復(fù)雜過濾器圖暖哨。

對于剛才用三步處理的方式,用過濾器圖可以這樣做:
ffplay -f lavfi -i testsrc -vf split[a][b];[a]pad=2*iw[1];[b]hflip[2];[1][2]overlay=w
F1: split過濾器創(chuàng)建兩個輸入文件的拷貝并標(biāo)記為[a],[b]
F2: [a]作為pad過濾器的輸入凰狞,pad過濾器產(chǎn)生2倍寬度并輸出到[1].
F3: [b]作為hflip過濾器的輸入篇裁,vflip過濾器水平翻轉(zhuǎn)視頻并輸出到[2].
F4: 用overlay過濾器把 [2]覆蓋到[1]的旁邊.

選擇媒體流

一些多媒體容器比如AVI,mkv赡若,mp4等达布,可以包含不同種類的多個流,如何從容器中抽取各種流呢逾冬?
語法:
-map file_number[:stream_type][:stream_number]

這有一些特別流符號的說明:
1黍聂、-map 0 選擇第一個文件的所有流
2、-map i:v 從文件序號i(index)中獲取所有視頻流身腻, -map i:a 獲取所有音頻流产还,-map i:s 獲取所有字幕流等等。
3嘀趟、特殊參數(shù)-an,-vn,-sn分別排除所有的音頻脐区,視頻,字幕流

image.png

tip:對比上面的圖她按,可以知道牛隅,假設(shè)有兩個文件ffmpeg -i fist.mp4 -i second.mp4 ..output.mp4
如果想去兩個文件的音視頻流 ffmpeg -i fist.mp4 -i second.mp4 map:0 -map 1 output.mp4
如果想去第一個文件的視頻流,第二個文件的音頻流ffmpeg -i fist.mp4 -i second.mp4 -map:v:0 -map:a:0 output.mp4

查看幫助

可用的bit流 :ffmpeg –bsfs
可用的編解碼器:ffmpeg –codecs
可用的解碼器:ffmpeg –decoders
可用的編碼器:ffmpeg –encoders
可用的過濾器:ffmpeg –filters
可用的視頻格式:ffmpeg –formats
可用的聲道布局:ffmpeg –layouts
可用的license:ffmpeg –L
可用的像素格式:ffmpeg –pix_fmts
可用的協(xié)議:ffmpeg -protocals

碼率尤溜、幀率和文件大小

碼率和幀率是視頻文件的最重要的基本特征,對于他們的特有設(shè)置會決定視頻質(zhì)量汗唱。如果我們知道碼率和時長那么可以很容易計算出輸出文件的大小宫莱。

幀率:幀率也叫幀頻率,幀率是視頻文件中每一秒的幀數(shù)哩罪,肉眼想看到連續(xù)移動圖像至少需要15幀授霸。
碼率:比特率(也叫碼率巡验,數(shù)據(jù)率)是一個確定整體視頻/音頻質(zhì)量的參數(shù),秒為單位處理的字節(jié)數(shù)碘耳,碼率和視頻質(zhì)量成正比显设,在視頻文件中中比特率用bps來表達(dá)。

設(shè)置幀率
1辛辨、用 -r 參數(shù)設(shè)置幀率
ffmpeg –i input.mp4 –r fps output.mp4
2捕捂、用fps filter設(shè)置幀率
ffmpeg -i clip.mpg -vf fps=fps=25 clip.webm

設(shè)置碼率 –b 參數(shù)
-b
ffmpeg -i film.avi -b 1.5M film.mp4
音頻:-b:a 視頻: - b:v
設(shè)置視頻碼率為1500kbps
ffmpeg -i input.avi -b:v 1500k output.mp4

控制輸出文件大小
-fs (file size首字母縮寫)
ffmpeg -i input.avi -fs 1024K output.mp4
計算輸出文件大小
(視頻碼率+音頻碼率) * 時長 /8 = 文件大小K

調(diào)整視頻分辨率

用-s參數(shù)設(shè)置視頻分辨率,參數(shù)值wxh斗搞,w寬度單位是像素指攒,h高度單位是像素
ffmpeg -i input_file -s 320x240 output_file

2、預(yù)定義的視頻尺寸
下面兩條命令有相同效果
ffmpeg -i input.avi -s 640x480 output.avi
ffmpeg -i input.avi -s vga output.avi
下表列出了所有的預(yù)定義尺寸


image.png

Scale filter調(diào)整分辨率
Scale filter的優(yōu)點(diǎn)是可以使用一些額外的參數(shù)
語法:
Scale=width:height[:interl={1|-1}]
下表列出了常用的額外參數(shù)

image.png

下面兩條命令有相同效果
ffmpeg -i input.mpg -s 320x240 output.mp4
ffmpeg -i input.mpg -vf scale=320:240 output.mp4

對輸入視頻成比例縮放
改變?yōu)樵匆曨l一半大小
ffmpeg -i input.mpg -vf scale=iw/2:ih/2 output.mp4
改變?yōu)樵曨l的90%大衅Х佟:
ffmpeg -i input.mpg -vf scale=iw0.9:ih0.9 output.mp4

在未知視頻的分辨率時允悦,保證調(diào)整的分辨率與源視頻有相同的橫縱比。
寬度固定400虑啤,高度成比例:
ffmpeg -i input.avi -vf scale=400:400/a
ffmpeg -i input.avi -vf scale=400:-1

相反地隙弛,高度固定300,寬度成比例:
ffmpeg -i input.avi -vf scale=-1:300
ffmpeg -i input.avi -vf scale=300*a:300

裁剪視頻crop filter

從輸入文件中選取你想要的矩形區(qū)域到輸出文件中,常見用來去視頻黑邊狞山。
語法:crop:ow[:oh[:x[:y:[:keep_aspect]]]]


image.png

裁剪輸入視頻的左三分之一全闷,中間三分之一,右三分之一:
ffmpeg -i input -vf crop=iw/3:ih :0:0 output
ffmpeg -i input -vf crop=iw/3:ih :iw/3:0 output
ffmpeg -i input -vf crop=iw/3:ih :iw/3*2:0 output
裁剪幀的中心
當(dāng)我們想裁剪區(qū)域在幀的中間時铣墨,裁剪filter可以跳過輸入x和y值室埋,他們的默認(rèn)值是
Xdefault = ( input width - output width)/2
Ydefault = ( input height - output height)/2
ffmpeg -i input_file -v crop=w:h output_file
裁剪中間一半?yún)^(qū)域:
ffmpeg -i input.avi -vf crop=iw/2:ih/2 output.avi

比較裁剪后的視頻和源視頻比較
ffplay -i jidu.mp4 -vf split[a][b];[a]drawbox=x=(iw-300)/2:(ih-300)/2:w=300:h=300:c=yellow[A];[A]pad=2iw[C];[b]crop=300:300:(iw-300)/2:(ih-300)/2[B];[C][B]overlay=w2.4:40

image.png

自動檢測裁剪區(qū)域?
cropdetect filter 自動檢測黑邊區(qū)域
ffplay jidu.mp4 -vf cropdetect

image.png

然后用檢測到的值來裁剪視頻
ffplay jidu.mp4 –vf crop=672:272:0:54

填充視頻(pad)
在視頻幀上增加一快額外額區(qū)域,經(jīng)常用在播放的時候顯示不同的橫縱比
語法:pad=width[:height:[:x[:y:[:color]]]]

image.png

創(chuàng)建一個30個像素的粉色寬度來包圍一個SVGA尺寸的圖片:
ffmpeg -i photo.jpg -vf pad=860:660:30:30:pink framed_photo.jpg

同理可以制作input.mp4視頻用30個像素粉色包圍視頻
ffplay -i input.mp4 -vf pad=iw+60:ih+60:30:30:pink

4:3到16:9
一些設(shè)備只能播放16:9的橫縱比伊约,4:3的橫縱比必須在水平方向的兩邊填充成16:9姚淆,
高度被保持,寬度等于高度乘以16/9屡律,x(輸入文件水平位移)值由表達(dá)式(output_width - input_width)/2來計算腌逢。
4:3到16:9的通用命令是:
ffmpeg -i input.mp4 -vf pad=ih16/9:ih :(ow-iw)/2:0:color output.mp4
eg:ffplay -f input.mp4 -vf pad=ih
16/9:ih:(ow-iw)/2:0:pink

16:9到4:3
為了用4:3的橫縱比來顯示16:9的橫縱比,填充輸入文件的垂直兩邊超埋,寬度保持不變搏讶,高度是寬度的3/4,y值(輸入文件的垂直偏移量)是由一個表達(dá)式(output_height-input_height)/2計算出來的霍殴。
16:9到4:3的通用命令:
ffmpeg -i input.mp4-vf pad=iw :iw3/4:0:(oh-ih)/2:color output.mp4
eg:ffplay -i input.mp4 =size=320x180 -vf pad=iw:iw
3/4:0:(oh-ih)/2:pink

翻轉(zhuǎn)和旋轉(zhuǎn)

水平翻轉(zhuǎn)語法: -vf hflip
ffplay -f lavfi -i testsrc -vf hflip
垂直翻轉(zhuǎn)語法:-vf vflip
ffplay -f lavfi -i testsrc -vf vflip

語法:transpose={0,1,2,3}
0:逆時針旋轉(zhuǎn)90°然后垂直翻轉(zhuǎn)
1:順時針旋轉(zhuǎn)90°
2:逆時針旋轉(zhuǎn)90°
3:順時針旋轉(zhuǎn)90°然后水平翻轉(zhuǎn)

模糊媒惕,銳化

模糊
語法:boxblur=luma_r:luma_p[:chroma_r:chram_p[:alpha_r:alpha_p]]
ffplay -f lavfi -i testsrc -vf boxblur=1:10:4:10
注意:luma_r和alpha_r半徑取值范圍是0~min(w,h)/2, chroma_r半徑的取值范圍是0~min(cw/ch)/2

銳化
語法:-vf unsharp=l_msize_x:l_msize_y:l_amount:c_msize_x:c_msize_y:c_amount
所有的參數(shù)是可選的,默認(rèn)值是5:5:1.0:5:5:0.0
l_msize_x:水平亮度矩陣来庭,取值范圍3-13妒蔚,默認(rèn)值為5
l_msize_y:垂直亮度矩陣,取值范圍3-13,默認(rèn)值為5
l_amount:亮度強(qiáng)度肴盏,取值范圍-2.0-5.0科盛,負(fù)數(shù)為模糊效果,默認(rèn)值1.0
c_msize_x:水平色彩矩陣菜皂,取值范圍3-13贞绵,默認(rèn)值5
c_msize_y:垂直色彩矩陣,取值范圍3-13恍飘,默認(rèn)值5
c_amount:色彩強(qiáng)度榨崩,取值范圍-2.0-5.0,負(fù)數(shù)為模糊效果常侣,默認(rèn)值0.0
eg:
使用默認(rèn)值蜡饵,亮度矩陣為5x5和亮度值為1.0
ffmpeg -i input.mp4 -vf unsharp output.mp4
高斯模糊效果(比較強(qiáng)的模糊):
ffplay -i input.mp4 -vf unsharp=13:13:-2

覆蓋(畫中畫)

語法:overlay[=x[:y]
所有的參數(shù)都是可選,默認(rèn)值都是0


image.png

Logo在左上角
ffmpeg -i input.mp4 -i logo.png -filter_complex overlay output.mp4
右上角:
ffmpeg -i input.mp4 -i logo.png -filter_complex overlay=W-w output.mp4
左下角:
ffmpeg -i input.mp4 -i logo.png -filter_complex overlay=0:H-h output.mp4
右下角:
ffmpeg -i input.mp4 -i logo.png -filter_complex overlay=W-w:H-h output.mp4

刪除logo
語法:-vf delogo=x:y:w:h[:t[:show]]
x:y 離左上角的坐標(biāo)
w:h logo的寬和高
t: 矩形邊緣的厚度默認(rèn)值4
show:若設(shè)置為1有一個綠色的矩形胳施,默認(rèn)值0.
ffplay -i jidu.mp4 -vf delogo=50:51:60:60:100:0

添加文本

語法:
drawtext=fontfile=font_f:text=text1[:p3=v3[:p4=v4[…]]]
常用的參數(shù)值
x:離左上角的橫坐標(biāo)
y: 離左上角的縱坐標(biāo)
fontcolor:字體顏色
fontsize:字體大小
text:文本內(nèi)容
textfile:文本文件
t:時間戳溯祸,單位秒
n:幀數(shù)開始位置為0
draw/enable:控制文件顯示,若值為0不顯示舞肆,1顯示焦辅,可以使用函數(shù)

1、在左上角添加Welcome文字
ffplay -i color=c=white -vf drawtext=fontfile=arial.ttf:text=Welcom
2椿胯、在中央添加Good day
ffplay -i color=c=white -vf drawtext="fontfile=arial.ttf:text='Goodday':x=(w-tw)/2:y=(h-th)/2"
3筷登、設(shè)置字體顏色和大小
ffplay -i color=c=white -vf drawtext="fontfile=arial.ttf:text='Happy Holidays':x=(w-tw)/2:y=(h-th)/2:fontcolor=green:fontsize=30"

動態(tài)文本
用 t (時間秒)變量實(shí)現(xiàn)動態(tài)文本
1、頂部水平滾動
ffplay -i jidu.mp4 -vf drawtext="fontfile=arial.ttf:text='Dynamic RTL text':x=w-t50:fontcolor=darkorange:fontsize=30"
2哩盲、底部水平滾動
ffplay -i jidu.mp4 -vf drawtext="fontfile=arial.ttf:textfile=textfile.txt:x=w-t
50:y=h-th:fontcolor=darkorange:fontsize=30"
3前方、垂直從下往上滾動
ffplay jidu.mp4 -vf drawtext="textfile=textfile:fontfile=arial.ttf:x=(w-tw)/2:y=h-t*100:fontcolor=white:fontsize=30“
在右上角顯示當(dāng)前時間 localtime
ffplay jidu.mp4 -vf drawtext="fontfile=arial.ttf:x=w-tw:fontcolor=white:fontsize=30:text='%{localtime:%H\:%M\:%S}'“

每隔3秒顯示一次當(dāng)前時間
ffplay jidu.mp4 -vf drawtext="fontfile=arial.ttf:x=w-tw:fontcolor=white:fontsize=30:text='%{localtime:%H\:%M\:%S}':enable=lt(mod(t,3),1)"

圖片支持

FFmpeg支持絕大多數(shù)圖片處理, 除LJPEG(無損JPEG)之外,其他都能被解碼廉油,除了EXR,PIC,PTX之外惠险,所有的都能被編碼。
截取一張圖片使用 –ss(seek from start)參數(shù).
ffmpeg -ss 01:23:45 -i jidu.mp4 image.jpg
從視頻中生成GIF圖片
ffmpeg -i jidu.mp4 -t 10 -pix_fmt rgb24 jidu.gif
轉(zhuǎn)換視頻為圖片(每幀一張圖)
ffmpeg -i clip.avi frame%4d.jpg
圖片轉(zhuǎn)換為視頻
ffmpeg -f image2 -i img%4d.jpg -r 25 video.mp4

裁剪抒线、填充

和視頻一樣班巩,圖片也可以被裁剪和填充
裁剪
ffmpeg -f lavfi -i rgbtestsrc -vf crop=150:150 crop_rg.png
填充
ffmpeg -f lavfi -i smptebars -vf pad=360:280:20:20:orange pad_smpte.jpg

翻轉(zhuǎn),旋轉(zhuǎn)嘶炭,覆蓋

和視頻一樣圖片同樣能翻轉(zhuǎn)抱慌,旋轉(zhuǎn)和覆蓋
翻轉(zhuǎn)
ffmpeg -i orange.jpg -vf hflip orange_hfilp.jpg
ffmpeg -i orange.jpg -vf vflip orange_vfilp.jpg
旋轉(zhuǎn)
ffmpeg -i image.png -vf transpose=1 image_rotated.png
覆蓋
ffmpeg -f lavfi -i rgbtestsrc -s 400x300 rgb .png
ffmpeg -f lavfi -i smptebars smpte.png
ffmpeg -i rgb .png -i smpte.png -filter_complex overlay= (W-w)/2:(H-h)/2 rgb_smpte.png

其他技巧

屏幕錄像
顯示設(shè)備名稱
ffmpeg -list_devices 1 -f dshow -i dummy
調(diào)用攝像頭
ffplay -f dshow -i video="Integrated Camera"
保存為文件
ffmpeg -y -f dshow -s 320x240 -r 25 -i video="Integrated Camera" -b:v 800K -vcodec mpeg4 new.mp4

添加字幕subtitles
語法 –vf subtitles=file
ffmpeg -i jidu.mp4 -vf subtitles=rgb.srt output.mp4

視頻顫抖、色彩平衡
視頻顫抖
ffplay –i jidu.mp4 -vf crop=in_w/2:in_h/2:(in_w-out_w)/2+((in_w-out_w)/2)sin(n/10):(in_h-out_h)/2 +((in_h-out_h)/2)sin(n/7)

色彩平衡
ffplay -i jidu.mp4 -vf curves=vintage
色彩變幻
ffplay -i jidu.mp4 -vf hue="H=2PIt: s=sin(2PIt)+1“
彩色轉(zhuǎn)換黑白
ffplay -i jidu.mp4 -vf lutyuv="u=128:v=128"

設(shè)置音頻視頻播放速度
3倍視頻播放視頻
ffplay -i jidu.mp4 -vf setpts=PTS/3
?速度播放視頻
ffplay -i jidu.mp4 -vf setpts=PTS/(3/4)
2倍速度播放音頻
ffplay -i speech.mp3 -af atempo=2

截圖
每隔一秒截一張圖
ffmpeg -i input.flv -f image2 -vf fps=fps=1 out%d.png
每隔20秒截一張圖
ffmpeg -i input.flv -f image2 -vf fps=fps=1/20 out%d.png

注意:ffmpeg version N-57961-gec8e68c版本最多可以每隔20s截一張圖眨猎。
多張截圖合并到一個文件里(2x3) 每隔一千幀(秒數(shù)=1000/fps25)即40s截一張圖
ffmpeg -i jidu.mp4 -frames 3 -vf "select=not(mod(n,1000)),scale=320:240,tile=2x3" out.png

本篇文章主要記錄ffmpeg的一些基礎(chǔ)指令操作抑进,該資料的來源是源于網(wǎng)上的一個ppt文檔,感謝文檔的總結(jié)睡陪。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末寺渗,一起剝皮案震驚了整個濱河市夕凝,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌户秤,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件逮矛,死亡現(xiàn)場離奇詭異鸡号,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)须鼎,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門鲸伴,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人晋控,你說我怎么就攤上這事汞窗。” “怎么了赡译?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵仲吏,是天一觀的道長。 經(jīng)常有香客問我蝌焚,道長裹唆,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任只洒,我火速辦了婚禮许帐,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘毕谴。我一直安慰自己成畦,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布涝开。 她就那樣靜靜地躺著循帐,像睡著了一般。 火紅的嫁衣襯著肌膚如雪忠寻。 梳的紋絲不亂的頭發(fā)上惧浴,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天,我揣著相機(jī)與錄音奕剃,去河邊找鬼衷旅。 笑死,一個胖子當(dāng)著我的面吹牛纵朋,可吹牛的內(nèi)容都是我干的柿顶。 我是一名探鬼主播,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼操软,長吁一口氣:“原來是場噩夢啊……” “哼嘁锯!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤家乘,失蹤者是張志新(化名)和其女友劉穎蝗羊,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體仁锯,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡耀找,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了业崖。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片野芒。...
    茶點(diǎn)故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖双炕,靈堂內(nèi)的尸體忽然破棺而出狞悲,到底是詐尸還是另有隱情,我是刑警寧澤妇斤,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布摇锋,位于F島的核電站,受9級特大地震影響站超,放射性物質(zhì)發(fā)生泄漏乱投。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一顷编、第九天 我趴在偏房一處隱蔽的房頂上張望戚炫。 院中可真熱鬧,春花似錦媳纬、人聲如沸双肤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽茅糜。三九已至,卻和暖如春素挽,著一層夾襖步出監(jiān)牢的瞬間蔑赘,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工预明, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留缩赛,地道東北人。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓撰糠,卻偏偏與公主長得像酥馍,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子阅酪,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容