ffmpeg-python中文文檔(三)——API參考

class ffmpeg.Stream(upstream_node,upstream_label,node_types,upstream_selector=None )

表示上游節(jié)點的傳出邊緣美旧;可以用來創(chuàng)建更多的下游節(jié)點。

某些 ffmpeg濾波器會丟棄音頻流贬墩,因此必須注意在最終輸出中保留音頻榴嗅。.audio.video運算符可用于引用流的音頻/視頻部分,以便可以單獨處理它們陶舞,然后在以后的管道中重新組合它們嗽测。這種困境是ffmpeg固有的,ffmpeg-python試圖遠離肿孵,而用戶可以參考官方ffmpeg文檔唠粥,了解為什么某些過濾器會掉落音頻。

  • 屬性audio
    選擇流的音頻部分停做。
    stream.audiostream['a']的簡寫晤愧。

    獨立處理流的音頻和視頻部分:

input = ffmpeg.input('in.mp4')
audio = input.audio.filter("aecho", 0.8, 0.9, 1000, 0.3)
video = input.video.hflip()
out = ffmpeg.output(audio, video, 'out.mp4')
  • 屬性video
    選擇流的視頻部分。
    stream.video是 的簡寫stream['v']蛉腌。
    例子
    獨立處理流的音頻和視頻部分:
  input = ffmpeg.input('in.mp4')
  audio = input.audio.filter("aecho", 0.8, 0.9, 1000, 0.3)
  video = input.video.hflip()
  out = ffmpeg.output(audio, video, 'out.mp4')

ffmpeg.input( filename , **kwargs )

輸入文件 URL (ffmpeg -i option)

  • 任何提供的 kwargs 都會逐字傳遞給 ffmpeg(例如 t=20官份、f='mp4'、acodec='pcm'等)烙丛。

  • 要告訴 ffmpeg 從 stdin 讀取舅巷,請使用 pipe:作為文件名。

ffmpeg.merge_outputs(* streams )

在一個 ffmpeg 命令行中包含所有給定的輸出

ffmpeg.output( streams_and_filename* , kwargs )

輸出文件地址

  • 句法:

    ffmpeg.output(stream1[, stream2, stream3…], 文件名, ffmpeg_args)

  • 任何提供的關鍵字參數(shù)被傳遞給ffmpeg的逐字(例如 t=20河咽,f='mp4'钠右,acodec='pcm',vcodec='rawvideo'忘蟹,等等)飒房。一些關鍵字參數(shù)經過特殊處理,如下所示寒瓦。

  • 參數(shù):

    • video_bitrate – 的參數(shù)-b:v情屹,例如video_bitrate=1000。

    • audio_bitrate – 的參數(shù)-b:a杂腰,例如audio_bitrate=200垃你。

    • format –-f參數(shù)的別名,例如format='mp4' (等價于f='mp4')。

  • 如果提供了多個流惜颇,它們將映射到相同的輸出皆刺。

  • 要告訴 ffmpeg 寫入標準輸出牌捷,請pipe:用作文件名脆霎。

ffmpeg.overwrite_output(stream)

不詢問就覆蓋輸出文件(ffmpeg -y 選項)

ffmpeg.probe( filename , cmd='ffprobe' , **kwargs )

在指定文件上運行 ffprobe 并返回輸出的 JSON 表示。

  • 加注:

    ffmpeg.Error – 如果 ffprobe 返回非零退出代碼眷茁,Error則返回an并帶有通用錯誤消息锨亏〕赵梗可以通過訪問stderr異常的屬性來檢索 stderr 輸出 。*

ffmpeg.compile( stream_spec , cmd='ffmpeg' , overwrite_output=False )

構建用于調用 ffmpeg 的命令行器予。

  • 該run()函數(shù)使用它來構建命令行參數(shù)并且在大多數(shù)情況下應該可以工作浪藻,但是直接調用這個函數(shù)對于調試或者無論出于何種原因需要手動調用 ffmpeg 很有用。

  • 這與調用get_args()相同乾翔,只是它還包括ffmpeg命令作為第一個參數(shù)爱葵。

  • 異常ffmpeg.Error(cmd,stdout反浓,stderr )

ffmpeg.get_args( stream_spec , overwrite_output=False )

構建要傳遞給 ffmpeg 的命令行參數(shù)萌丈。

ffmpeg.run( stream_spec , cmd='ffmpeg' , capture_stdout=False , capture_stderr=False , input=None , quiet=False , overwrite_output=False )

為提供的節(jié)點圖調用 ffmpeg

參數(shù)

  • capture_stdout – 如果為 True雷则,則捕獲標準輸出(與pipe:ffmpeg 輸出一起使用 )辆雾。

  • capture_stderr – 如果為真,則捕獲標準錯誤月劈。

  • quiet – 設置capture_stdout和 的簡寫capture_stderr乾颁。

  • 輸入- 要發(fā)送到標準輸入的文本(與pipe: ffmpeg 輸入一起使用)

  • **kwargs – 傳遞給get_args()(例如 overwrite_output=True)的關鍵字參數(shù)。

  • 返回: (out, err) 元組艺栈,包含捕獲的 stdout 和 stderr 數(shù)據(jù)。

ffmpeg.run_async( stream_spec , cmd='ffmpeg' , pipe_stdin=False , pipe_stdout=False , pipe_stderr=False , quiet=False , overwrite_output=False )

為提供的節(jié)點圖異步調用 ffmpeg湾盒。

參數(shù)

  • pipe_stdin – 如果為 True湿右,則將管道連接到子進程標準輸入(與pipe:ffmpeg 輸入一起使用)。
  • pipe_stdout – 如果為 True罚勾,則將管道連接到子進程stdout(與pipe:ffmpeg 輸出一起使用)毅人。
  • pipe_stderr – 如果為 True,則將管道連接到子進程stderr尖殃。
  • quiet – 設置capture_stdout和 的 簡寫capture_stderr丈莺。
  • **kwargs – 傳遞給get_args()(例如 overwrite_output=True)的關鍵字參數(shù)。

例子

運行和流式輸入:

process = (
  ffmpeg
  .input('pipe:', format='rawvideo', pix_fmt='rgb24', s='*{}*x*{}*'.format(width, height))
  .output(out_filename, pix_fmt='yuv420p')
  .overwrite_output()
  .run_async(pipe_stdin=**True**)
)
process.communicate(input=input_data)

運行并捕獲輸出:

process = (
  ffmpeg
  .input(in_filename)
  .output('pipe':, format='rawvideo', pix_fmt='rgb24')
  .run_async(pipe_stdout=**True**, pipe_stderr=**True**)
)
out, err = process.communicate()

使用 numpy 逐幀處理視頻:

process1 = (
  ffmpeg
  .input(in_filename)
  .output('pipe:', format='rawvideo', pix_fmt='rgb24')
  .run_async(pipe_stdout=True)
)
process2 = (
   ffmpeg
  .input('pipe:', format='rawvideo', pix_fmt='rgb24', s='{}x{}'.format(width, height))
  .output(out_filename, pix_fmt='yuv420p')
  .overwrite_output()
  .run_async(pipe_stdin=True)
)
while True:
  in_bytes = process1.stdout.read(width * height * 3)
  if not in_bytes:
    break
  in_frame = (
    np
    .frombuffer(in_bytes, np.uint8)
    .reshape([height, width, 3])
  )
  out_frame = in_frame * 0.3
  process2.stdin.write(frame.astype(np.uint8).tobytes())
  
process2.stdin.close()
process1.wait()
process2.wait()

ffmpeg.view( stream_spec , detail=False , filename=None , pipe=False , **kwargs )

ffmpeg.colorchannelmixer(stream送丰,args缔俄,kwargs* )

通過重新混合顏色通道來調整視頻輸入幀。

ffmpeg.concat( * Streams , ** kwargs )

連接音頻和視頻流,將它們一個接一個地連接在一起俐载。

篩選器適用于同步視頻和音頻流的片段蟹略。所有段必須具有每種類型的相同數(shù)量的流,這也是輸出時的流數(shù)遏佣。

參數(shù)

  • unsafe – 激活不安全模式:如果段具有不同的格式挖炬,則不會失敗。
  • 由于各種原因状婶,包括編解碼器幀大小或草率創(chuàng)作意敛,相關流并不總是具有完全相同的持續(xù)時間。出于這個原因膛虫,相關的同步流(例如視頻及其音軌)應該立即連接起來草姻。concat 過濾器將使用每個片段中最長流的持續(xù)時間(最后一個除外),并在必要時用靜音填充較短的音頻流走敌。
  • 要使此過濾器正常工作碴倾,所有段必須從時間戳 0 開始。
  • 所有對應的流必須在所有段中具有相同的參數(shù)掉丽;過濾系統(tǒng)會自動為視頻流選擇常用的像素格式跌榔,為音頻流選擇常用的采樣格式、采樣率和通道布局捶障,但其他設置僧须,如分辨率,必須由用戶明確轉換项炼。
  • 不同的幀率是可以接受的担平,但會導致輸出時的幀率可變;一定要配置輸出文件來處理它锭部。

ffmpeg.crop(stream, x , y ,width,height, **kwargs )

裁剪輸入視頻暂论。

參數(shù)

  • x – 輸出視頻左邊緣在輸入視頻中的水平位置。

  • y – 輸出視頻上邊緣在輸入視頻中的垂直位置拌禾。

  • width – 輸出視頻的寬度取胎。必須大于 0。

  • heigth - 輸出視頻的高度湃窍。必須大于 0闻蛀。

ffmpeg.drawbox(stream,x您市,y觉痛,width,height茵休,color薪棒, thickness =None手蝎,**kwargs )

在輸入圖像上繪制一個彩色框。

參數(shù)

  • x – 指定框左上角 x 坐標的表達式盗尸。它默認為 0柑船。

  • y – 指定框左上角 y 坐標的表達式。它默認為 0泼各。

  • width – 指定框的寬度鞍时;如果 0 解釋為輸入寬度。它默認為 0扣蜻。

  • heigth – 指定盒子的高度逆巍;如果 0 解釋為輸入高度。它默認為 0莽使。

  • color - 指定要寫入的框的顏色锐极。有關此選項的一般語法,請查看 ffmpeg-utils 手冊中的“顏色”部分芳肌。如果使用 特殊值反轉灵再,則框邊緣顏色與具有反轉亮度的視頻相同。

  • thickness ——設置盒子邊緣厚度的表達式亿笤。默認值為 3翎迁。

  • w – 的別名width。

  • h – 的別名height净薛。

  • c – 的別名color汪榔。

  • t – 的別名thickness。

ffmpeg.drawtext(stream, text=None , x=0 , y=0 , escape_text=True , **kwargs )

使用 libfreetype 庫從視頻頂部的指定文件中繪制文本字符串或文本肃拜。

要啟用此過濾器的編譯痴腌,您需要使用--enable-libfreetype. 要啟用默認字體回退和字體選項,您需要使用--enable-libfontconfig. 要啟用text_shaping選項燃领,您需要使用--enable-libfribidi

參數(shù)

· box - 用于使用背景顏色在文本周圍繪制一個框士聪。該值必須是 1(啟用)或 0(禁用)∶捅危框的默認值為 0戚嗅。

· boxborderw – 使用 boxcolor 設置要在框周圍繪制的邊框寬度。boxborderw 的默認值為 0枢舶。

· boxcolor - 用于在文本周圍繪制框的顏色。有關此選項的語法替久,請查看 ffmpeg-utils 手冊中的“顏色”部分凉泄。 boxcolor 的默認值為“white”。

· line_spacing – 使用 box 設置要在框周圍繪制的邊框的行間距(以像素為單位)蚯根。line_spacing 的默認值為 0后众。

· borderw – 使用邊框顏色設置要在文本周圍繪制的邊框寬度胀糜。邊框的默認值為 0。

· bordercolor – 設置用于在文本周圍繪制邊框的顏色蒂誉。有關此選項的語法教藻,請查看 ffmpeg-utils 手冊中的“顏色”部分。邊框顏色的默認值為“黑色”右锨。

· 擴展- 選擇文本的擴展方式括堤。可以是 none绍移、strftime(已棄用)或 normal(默認)悄窃。有關詳細信息,請參閱下面的文本擴展部分蹂窖。

· basetime – 設置計數(shù)的開始時間轧抗。值以微秒為單位。僅適用于已棄用的 strftime 擴展模式瞬测。要在正常擴展模式下進行模擬横媚,請使用 pts 函數(shù),提供開始時間(以秒為單位)作為第二個參數(shù)月趟。

· fix_bounds - 如果為 true灯蝴,檢查并修復文本坐標以避免剪切。

· fontcolor - 用于繪制字體的顏色狮斗。有關此選項的語法绽乔,請查看 ffmpeg-utils 手冊中的“顏色”部分。fontcolor 的默認值為“黑色”碳褒。

· fontcolor_expr – 與文本相同的擴展字符串以獲得動態(tài)字體顏色值折砸。默認情況下,此選項具有空值并且不被處理沙峻。設置此選項時睦授,它會覆蓋 fontcolor 選項。

· font - 用于繪制文本的字體系列摔寨。默認情況下無去枷。

· fontfile – 用于繪制文本的字體文件。必須包含路徑是复。如果禁用了 fontconfig 支持删顶,則此參數(shù)是必需的。

· alpha – 繪制應用 alpha 混合的文本淑廊。該值可以是介于 0.0 和 1.0 之間的數(shù)字逗余。該表達式也接受相同的變量 x、y季惩。默認值為 1录粱。請參閱 fontcolor_expr腻格。

· fontsize – 用于繪制文本的字體大小。字體大小的默認值為 16啥繁。

· text_shaping – 如果設置為 1菜职,則在繪制文本之前嘗試對文本進行整形(例如,反轉從右到左文本的順序并加入阿拉伯字符)旗闽。否則酬核,只需按照給定的方式繪制文本。默認為 1(如果支持)宪睹。

· ft_load_flags –用于加載字體的標志愁茁。這些標志映射了 libfreetype 支持的相應標志,并且是以下值的組合:

default亭病、no_scale鹅很、no_hinting、 render罪帖、  no_bitmap促煮、  vertical_layout、 force_autohint整袁、crop_bitmap菠齿、pedantic、 ignore_global_advance_width坐昙、no_recurse绳匀、 ignore_transform、 monochrome炸客、 linear_design疾棵、 no_autohint

默認值為“默認”。有關更多信息痹仙,請參閱 FT_LOAD_* libfreetype 標志的文檔是尔。

· shadowcolor – 用于在已繪制文本后面繪制陰影的顏色。有關此選項的語法开仰,請查看 ffmpeg-utils 手冊中的“顏色”部分拟枚。shadowcolor 的默認值為“黑色”。

· shadowx – 文本陰影位置相對于文本位置的 x 偏移量众弓。它可以是正值或負值恩溅。默認值為“0”。

· shadowy – 文本陰影位置相對于文本位置的 y 偏移量谓娃。它可以是正值或負值脚乡。默認值為“0”。

· start_number – n/frame_num 變量的起始幀號傻粘。默認值為“0”每窖。

· tabsize - 用于呈現(xiàn)選項卡的空格數(shù)大小。默認值為 4弦悉。

· timecode – 以“hh:mm:ss[:;.]ff”格式設置初始時間碼表示窒典。它可以帶或不帶文本參數(shù)使用。必須指定 timecode_rate 選項稽莉。

· rate – 設置時間碼幀率(僅限時間碼)瀑志。

· timecode_rate – 的別名rate。

· r – 的別名rate污秆。

· tc24hmax – 如果設置為 1劈猪,時間碼選項的輸出將在 24 小時左右回繞。默認值為 0(禁用)良拼。

· text -- 要繪制的文本字符串战得。文本必須是 UTF-8 編碼字符序列。如果沒有使用參數(shù) textfile 指定文件庸推,則此參數(shù)是必需的常侦。

· textfile – 包含要繪制的文本的文本文件。文本必須是 UTF-8 編碼字符序列贬媒。如果沒有使用參數(shù) text 指定文本字符串聋亡,則此參數(shù)是必需的。如果同時指定了 text 和 textfile际乘,則會引發(fā)錯誤坡倔。

· reload – 如果設置為 1,文本文件將在每一幀之前重新加載脖含。一定要自動更新它罪塔,否則它可能會被部分讀取,甚至失敗器赞。

· x – 指定將在視頻幀內繪制文本的偏移量的表達式垢袱。它相對于輸出圖像的左邊框。默認值為“0”港柜。

· y - 指定將在視頻幀內繪制文本的偏移量的表達式请契。它相對于輸出圖像的上邊框。默認值為“0”夏醉。有關接受的常量和函數(shù)的列表爽锥,請參見下文。

表達式常量:

x 和 y 的參數(shù)是包含以下常量和函數(shù)的表達式:

· dar:輸入顯示縱橫比畔柔,同 (w / h) * sar

· hsub:水平色度子樣本值氯夷。例如,對于像素格式“yuv422p”靶擦,hsub 為 2腮考,vsub 為 1雇毫。

· vsub:垂直色度子樣本值。例如踩蔚,對于像素格式“yuv422p”棚放,hsub 為 2,vsub 為 1馅闽。

· line_h:每個文本行的高度

· lh:別名為line_h.

· main_h:輸入高度

· h: 的別名main_h飘蚯。

· H: 的別名main_h。

· main_w:輸入寬度

· w: 的別名main_w福也。

· W: 的別名main_w局骤。

· ascent:對于所有渲染的字形,從基線到用于放置字形輪廓點的最高/上網格坐標的最大距離暴凑。這是一個正值峦甩,因為網格的 Y 軸向上。

· max_glyph_a: 的別名ascent搬设。

· 下降:對于所有渲染的字形穴店,從基線到用于放置字形輪廓點的最低網格坐標的最大距離。由于網格的方向拿穴,這是一個負值泣洞,Y 軸向上。

· max_glyph_d: 的別名descent默色。

· max_glyph_h:最大字形高度球凰,即渲染文本中包含的所有字形的最大高度,相當于上升-下降腿宰。

· max_glyph_w:最大字形寬度呕诉,即渲染文本中包含的所有字形的最大寬度。

· n:輸入幀數(shù)吃度,從0開始

· rand(min, max):返回一個包含在 min 和 max 之間的隨機數(shù)

· sar:輸入樣本縱橫比甩挫。

· t:時間戳,以秒為單位椿每,如果輸入時間戳未知伊者,則為 NAN

· text_h:渲染文本的高度

· th: 的別名text_h。

· text_w:渲染文本的寬度

· tw: 的別名text_w间护。

· x:繪制文本的 x 偏移坐標亦渗。

· y:繪制文本的 y 偏移坐標。

這些參數(shù)允許 x 和 y 表達式相互引用汁尺,因此您可以例如指定 y=x/dar.

ffmpeg.filter( stream_spec , filter_name , args* , kwargs )

應用自定義過濾器法精。

filter通常由更高級別的過濾器函數(shù)使用,例如hflip,但如果缺少過濾器實現(xiàn)ffmpeg-python搂蜓,您可以filter直接調用以ffmpeg-python將過濾器名稱和參數(shù)逐字傳遞給ffmpeg狼荞。

參數(shù)

  • stream_spec – 流、流列表或標簽到流字典映射
  • filter_name – ffmpeg 過濾器名稱帮碰,例如colorchannelmixer
  • *args– 逐字傳遞給 ffmpeg 的 args 列表
  • **kwargs – 逐字傳遞給 ffmpeg 的關鍵字參數(shù)列表

函數(shù)名稱后綴_是為了避免與標準pythonfilter函數(shù)混淆粘秆。

例子

ffmpeg.input('in.mp4').filter('hflip').output('out.mp4').run()

ffmpeg.filter_( stream_spec , filter_name , args* , kwargs )

替代名稱filter,以免與內置的pythonfilter運算符沖突收毫。

ffmpeg.filter_multi_output( stream_spec , filter_name , args* , kwargs )

應用具有一個或多個輸出的自定義過濾器。

filter與過濾器可以產生多個輸出相同殷勘。

要引用輸出流此再,請使用.stream運算符或括號簡寫:

例子

 split = ffmpeg.input('in.mp4').filter_multi_output('split') split0 = split.stream(0) split1 = split[1] ffmpeg.concat(split0, split1).output('out.mp4').run() 

ffmpeg.hflip(stream)

水平翻轉輸入視頻。

ffmpeg.hue(stream玲销,**kwargs )

修改輸入的色調和/或飽和度输拇。

參數(shù)

  • h – 將色調角度指定為度數(shù)。它接受一個表達式贤斜,默認為“0”策吠。

  • s – 在 [-10,10] 范圍內指定飽和度。它接受一個表達式并默認為“1”瘩绒。

  • H – 將色調角度指定為弧度數(shù)猴抹。它接受一個表達式,默認為“0”锁荔。

  • b – 在 [-10,10] 范圍內指定亮度蟀给。它接受一個表達式并默認為“0”。

ffmpeg.overlay( main_parent_node , overlay_parent_node , eof_action='repeat' , **kwargs )

將一個視頻疊加在另一個視頻之上阳堕。

參數(shù)

  • x – 設置主視頻上疊加視頻的 x 坐標表達式跋理。默認值為0。如果表達式無效恬总,則將其設置為一個巨大的值(意味著覆蓋不會顯示在輸出可見區(qū)域內)前普。

  • y – 設置主視頻上疊加視頻的 y 坐標表達式。默認值為0壹堰。如果表達式無效拭卿,則將其設置為一個巨大的值(意味著覆蓋不會顯示在輸出可見區(qū)域內)。

  • eof_action –在輔助輸入上遇到 EOF 時要采取的操作缀旁;它接受以下值之一:

    • repeat:重復最后一幀(默認)记劈。

    • endall: 結束兩個流。

    • pass: 通過主輸入并巍。

  • eval –

    • 在計算 x 和 y 的表達式時設置目木。它接受以下值:

    • init:僅在過濾器初始化期間或命令執(zhí)行時評估表達式一次處理

    • frame: 評估每個傳入幀的表達式
      默認值為frame。

  • shortest – 如果設置為 1,則在最短輸入終止時強制輸出終止刽射。默認值為 0军拟。

  • format –
    設置輸出視頻的格式。它接受以下值:

  • yuv420: 強制 YUV420 輸出

  • yuv422: 強制 YUV422 輸出

  • yuv444: 強制 YUV444 輸出

  • rgb: 強制打包 RGB 輸出

  • gbrp:強制平面RGB輸出
    默認值為yuv420誓禁。

  • rgb ( deprecated ) –` 如果設置為 1懈息,則強制過濾器接受 RGB 顏色空間中的輸入。默認值為 0摹恰。此選項已棄用辫继,請改用格式。

  • repeatlast –如果設置為 1俗慈,則強制過濾器在主輸入上繪制最后一個覆蓋幀姑宽,直到流結束。值 0 禁用此行為闺阱。默認值為 1炮车。

ffmpeg.setpts(steam, expr )

更改輸入幀的 PTS(表示時間戳)。

FFmpeg里有兩種時間戳:DTS(Decoding Time Stamp)和PTS(Presentation Time Stamp)酣溃。 顧名思義瘦穆,前者是解碼的時間,后者是顯示的時間赊豌。

參數(shù)

  • expr – 為每個幀評估以構造其時間戳的表達式扛或。

ffmpeg.trim(stream,**kwargs )

修剪輸入,使輸出包含輸入的一個連續(xù)子部分碘饼。

參數(shù)

  • start - 指定保留部分的開始時間告喊,即帶有時間戳開始的幀將是輸出中的第一幀。

  • end – 指定將被丟棄的第一幀的時間派昧,即緊接在帶有時間戳 end 的幀之前的幀將是輸出中的最后一幀黔姜。

  • start_pts – 這與 start 相同,只是此選項以時基單位而不是秒為單位設置開始時間戳蒂萎。

  • end_pts – 這與 end 相同秆吵,只是此選項以時基單位而不是秒為單位設置結束時間戳。

  • duration – 輸出的最大持續(xù)時間(以秒為單位)五慈。

  • start_frame – 應傳遞到輸出的第一幀的編號纳寂。

  • end_frame – 應丟棄的第一幀的編號。

ffmpeg.vflip(stream)

垂直翻轉輸入視頻泻拦。

ffmpeg.zoompan(stream毙芜,**kwargs )

應用縮放和平移效果。

參數(shù)

  • zoom – 設置縮放表達式争拐。默認值為 1腋粥。

  • x – 設置 x 表達式。默認值為 0。

  • y – 設置 y 表達式隘冲。默認值為 0闹瞧。

  • d – 以幀數(shù)設置持續(xù)時間表達式。這設置單個輸入圖像將持續(xù)多少幀效果展辞。

  • s – 設置輸出圖像大小奥邮,默認為hd720.

  • fps - 設置輸出幀率,默認為 25罗珍。

  • z – 的別名zoom洽腺。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市覆旱,隨后出現(xiàn)的幾起案子已脓,更是在濱河造成了極大的恐慌,老刑警劉巖通殃,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異厕宗,居然都是意外死亡画舌,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進店門已慢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來曲聂,“玉大人,你說我怎么就攤上這事佑惠∨笠福” “怎么了?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵膜楷,是天一觀的道長旭咽。 經常有香客問我,道長赌厅,這世上最難降的妖魔是什么穷绵? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮特愿,結果婚禮上仲墨,老公的妹妹穿的比我還像新娘。我一直安慰自己揍障,他們只是感情好目养,可當我...
    茶點故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著毒嫡,像睡著了一般癌蚁。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天匈勋,我揣著相機與錄音礼旅,去河邊找鬼。 笑死洽洁,一個胖子當著我的面吹牛痘系,可吹牛的內容都是我干的。 我是一名探鬼主播饿自,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼汰翠,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了昭雌?” 一聲冷哼從身側響起复唤,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎烛卧,沒想到半個月后佛纫,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡总放,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年呈宇,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片局雄。...
    茶點故事閱讀 40,096評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡甥啄,死狀恐怖,靈堂內的尸體忽然破棺而出炬搭,到底是詐尸還是另有隱情蜈漓,我是刑警寧澤,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布宫盔,位于F島的核電站融虽,受9級特大地震影響,放射性物質發(fā)生泄漏灼芭。R本人自食惡果不足惜衣形,卻給世界環(huán)境...
    茶點故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望姿鸿。 院中可真熱鬧谆吴,春花似錦、人聲如沸苛预。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽热某。三九已至腻菇,卻和暖如春胳螟,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背筹吐。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工糖耸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人丘薛。 一個月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓嘉竟,卻偏偏與公主長得像,于是被迫代替她去往敵國和親洋侨。 傳聞我的和親對象是個殘疾皇子舍扰,可洞房花燭夜當晚...
    茶點故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內容